Update to 6173f226070258

1. 添加python gevent库编译(但只支持LA)
2. 添加python gevent websocket 的编译支持
3. 更新 containerd 版本和补丁,修复编译问题
4. 添加 python pyaudio 的编译支持
5. 更新go的代理修复下载失败的问题
6. glibc版本使用2.38
7. gcc构建添加 <arch>-linux-<lib_c_name e.g. gnu musl> 格式的文件
8. 添加构建交叉编译工具链的配置
9. 添加代理使perl的资源下载更快
10. 添加pigz的压缩rootfs支持,加快构建速度
11. loongarch 支持systemd
12. 添加systemd的窗口自动登录root的功能
13. busybox的tar命令支持 tar -z 和 rev 命令
14. systemd支持自动登陆tty0(通常为屏幕)
15. 修复找不到 console-getty@.service 的bug
16. BR2_PACKAGE_QT5_JSCORE_AVAILABLE使能
17. qt5base支持LA架构编译
18. qt5script 支持 LA 架构编译
19. 修复高版本binutils(>=2.22)导致链接动态库失败的问题
20. 修复mpv使用高版本的waf不能编译的问题
21. 修复当使能WCHAR时procps-ng的编译错误
22. 2k300添加udev规则固定网口设备名字为ethX的格式
23. top命令使用新默认格式格式
24. linuxrc在systemd作为启动进程时,指向/sbin/init,修复不能启动的问题
25. busybox启动支持终端自动登录root
26. busybox启动时tty0支持登陆终端
27. 添加广东龙芯的部分自定义的package
28. 修复tty0显示终端时Qt程序被遮挡的问题
29. 修复设置默认ip失败的问题
30. 更新sdl2支持KMS DRM时无需编译opengl
31. 支持思源宋体
32. 支持在 /etc/profile 声明QT_QPA_FS_TSLIB=1
33. 2k300默认使用tslib作为qt input源
34. 添加编译Qt5的交叉编译套件的配置
35. 添加 quectel-CM 编译
36. 添加内核打包功能
37. 2k300添加strace的编译
38. 添加2k500的简易支持
39. 添加2k1000的简易支持
40. 添加嵌入式系统可用的虚拟键盘
41. 使用自定义的inputrc规则
42. 添加使用自定义systemd timesyncd 的配置
43. 添加默认自定义vimrc,支持中文显示
44. 添加opencv4的编译配置
45. 添加 stressapptest 的支持
46. 支持将RPi.GPIO的demo放入系统中
47. Qt5的交叉编译套件添加sqlite3库的编译支持
48. 添加脚本用于快速选择板卡配置文件
49. 添加gdbserver编译支持

Signed-off-by: maoxiaochuan <maoxiaochuan@loongson.cn>
This commit is contained in:
maoxiaochuan
2025-02-13 13:15:50 +08:00
committed by michael
parent 521b0953e2
commit 8114380ba5
276 changed files with 43162 additions and 34 deletions
+32
View File
@@ -153,6 +153,7 @@ menu "Debugging, profiling and benchmark"
source "package/strace/Config.in"
source "package/stress/Config.in"
source "package/stress-ng/Config.in"
source "package/stressapptest/Config.in"
source "package/sysdig/Config.in"
source "package/sysprof/Config.in"
source "package/tbtools/Config.in"
@@ -273,6 +274,7 @@ comment "Fonts"
source "package/inconsolata/Config.in"
source "package/liberation/Config.in"
source "package/wqy-zenhei/Config.in"
source "package/sourcehanserif/Config.in"
comment "Icons"
source "package/adwaita-icon-theme/Config.in"
@@ -1116,6 +1118,8 @@ menu "External python modules"
source "package/python-fonttools/Config.in"
source "package/python-frozenlist/Config.in"
source "package/python-future/Config.in"
source "package/python-gevent/Config.in"
source "package/python-gevent-websocket/Config.in"
source "package/python-git/Config.in"
source "package/python-gitdb2/Config.in"
source "package/python-gnupg/Config.in"
@@ -1269,6 +1273,7 @@ menu "External python modules"
source "package/python-pyasn1-modules/Config.in"
source "package/python-pyasynchat/Config.in"
source "package/python-pyasyncore/Config.in"
source "package/python-pyaudio/Config.in"
source "package/python-pybind/Config.in"
source "package/python-pycairo/Config.in"
source "package/python-pycares/Config.in"
@@ -1471,6 +1476,13 @@ menu "External python modules"
source "package/python-zlmdb/Config.in"
source "package/python-zope-interface/Config.in"
source "package/python-zopfli/Config.in"
source "package/python-pyftdi/Config.in"
source "package/python-smbus2/Config.in"
source "package/python-w1thermsensor/Config.in"
source "package/python-RPi-GPIO-LS/Config.in"
source "package/python-ls-rpi-gpio-demo/Config.in"
source "package/python-lumacore/Config.in"
source "package/python-lumaoled/Config.in"
endmenu
endif
source "package/quickjs/Config.in"
@@ -2893,4 +2905,24 @@ menu "Text editors and viewers"
source "package/vim/Config.in"
endmenu
menu "Loongson board software"
source "package/boot_run/Config.in"
source "package/mdio/Config.in"
source "package/qtperf/Config.in"
source "package/qt_movie/Config.in"
source "package/qt_music_player/Config.in"
source "package/ls_default_eth_config/Config.in"
source "package/ls2_sys_config_tool/Config.in"
source "package/ls3_system_tool/Config.in"
source "package/loongson_resize/Config.in"
source "package/mp4_sample/Config.in"
source "package/qt_use_tslib/Config.in"
source "package/quectel-cm/Config.in"
source "package/loongson_kernel/Config.in"
source "package/loongson_custom_inputrc/Config.in"
source "package/loongson_custom_vimrc/Config.in"
source "package/loongson_custom_timesyncd_conf/Config.in"
source "package/qt_virtual_keyboard_emb/Config.in"
endmenu
endmenu
+13
View File
@@ -0,0 +1,13 @@
config BR2_PACKAGE_BOOT_RUN
bool "loongson buildroot system autorun script after boot"
depends on BR2_INIT_SYSTEMD || BR2_INIT_BUSYBOX
help
this will create a service which name is boot_run.service
and create a script in /root which name is boot_run.sh
so this service will run this script after system boot
just like /etc/profile
if you don't need it you can run this command
'systemctl disable boot_run'
if you want to enable this service you can run this command
'systemctl enable boot_run'
+139
View File
@@ -0,0 +1,139 @@
################################################################################
#
# boot_run
#
################################################################################
BOOT_RUN_SITE = $(TOPDIR)/package/boot_run/boot_run.tar.gz
BOOT_RUN_SITE_METHOD = file
ifeq ($(BR2_INIT_SYSTEMD),y)
BOOT_RUN_DEPENDENCIES = busybox systemd
endif
define BOOT_RUN_EXTRACT_CMDS
echo $(BOOT_RUN_SITE)
tar -zxf $(BOOT_RUN_SITE) -C $(@D)/
endef
ifeq ($(BR2_PACKAGE_PSPLASH),y)
define BUILD_BOOT_RUN_PSPLASH_END_SETUP
cd $(@D) && echo -n "psplash-write \"MSG " >> boot_run.sh
cd $(@D) && echo -n $(BR2_TARGET_GENERIC_ISSUE) >> boot_run.sh
cd $(@D) && echo "\"" >> boot_run.sh
cd $(@D) && echo "psplash-write \"PROGRESS 100\"" >> boot_run.sh
cd $(@D) && echo "psplash-write \"QUIT\"" >> boot_run.sh
endef
else
define BUILD_BOOT_RUN_PSPLASH_END_SETUP
echo ""
endef
endif
ifneq ($(findstring $(BR2_PACKAGE_DRIVER_TESTCASE_QT_AUTO_START)$(BR2_PACKAGE_QT_MOVIE_AUTOBOOT),yy),)
define BUILD_BOOT_RUN_QT_START_SLEEP_SETUP
cd $(@D) && echo "if [ -z \"\$$(cat /proc/cmdline | grep ubifs)\" ]; then" >> boot_run.sh
cd $(@D) && echo " sleep 5" >> boot_run.sh
cd $(@D) && echo "fi" >> boot_run.sh
endef
else
define BUILD_BOOT_RUN_QT_START_SLEEP_SETUP
echo ""
endef
endif
ifeq ($(BR2_PACKAGE_QT_USE_TSLIB),y)
define BUILD_BOOT_RUN_QT_TSLIB_EXPORT_SETUP
cd $(@D) && echo "export QT_QPA_FB_TSLIB=1" >> boot_run.sh
endef
define BUILD_BOOT_RUN_PROFILE_ADD_QT_TSLIB_EXPORT
cd $(TARGET_DIR)/etc/ && if ! grep -q QT_QPA_FB_TSLIB=1 profile ; then echo "export QT_QPA_FB_TSLIB=1" >> profile; fi
endef
else
define BUILD_BOOT_RUN_QT_TSLIB_EXPORT_SETUP
echo "not tslib not setup"
endef
define BUILD_BOOT_RUN_PROFILE_ADD_QT_TSLIB_EXPORT
echo "not tslib export add to profile"
endef
endif
ifeq ($(BR2_PACKAGE_DRIVER_TESTCASE_QT_AUTO_START),y)
define BUILD_BOOT_RUN_QT_DRIVER_TESTCASE_SETUP
echo "setup driver_testcase Qt ver run after boot" && cd $(@D) && echo "/root/loongson_test_case/driver_testcase &" >> boot_run.sh
endef
else
define BUILD_BOOT_RUN_QT_DRIVER_TESTCASE_SETUP
echo ""
endef
endif
ifeq ($(BR2_PACKAGE_QT_MOVIE_AUTOBOOT),y)
define BUILD_BOOT_RUN_LOGO_PLAYER_SETUP
echo "setup logo_player run after boot"
cd $(@D) && echo "if [ -f \"/sys/firmware/devicetree/base/factory/tags\" ]; then" >> boot_run.sh
cd $(@D) && echo " cd /root/ && ls_system_tool_qt &" >> boot_run.sh
cd $(@D) && echo "else" >> boot_run.sh
cd $(@D) && echo " cd /root/logo_player && ./logo_player &" >> boot_run.sh
cd $(@D) && echo "fi" >> boot_run.sh
endef
else
define BUILD_BOOT_RUN_LOGO_PLAYER_SETUP
echo ""
endef
endif
ifeq ($(BR2_PACKAGE_LS3_SYSTEM_TOOL_QT_AUTO_START),y)
define BUILD_BOOT_RUN_QT_LS3_SYSTEM_TOOL_SETUP
echo "setup ls3_system_tool Qt ver run after boot" && cd $(@D) && echo "sleep 5;ls_system_tool_qt &" >> boot_run.sh
endef
else
define BUILD_BOOT_RUN_QT_LS3_SYSTEM_TOOL_SETUP
echo ""
endef
endif
define BOOT_RUN_BUILD_CMDS
echo "create boot_run.sh"
cd $(@D) && cp boot_run_ori.sh boot_run.sh
$(BUILD_BOOT_RUN_PSPLASH_END_SETUP)
$(BUILD_BOOT_RUN_QT_START_SLEEP_SETUP)
$(BUILD_BOOT_RUN_QT_TSLIB_EXPORT_SETUP)
$(BUILD_BOOT_RUN_LOGO_PLAYER_SETUP)
$(BUILD_BOOT_RUN_QT_DRIVER_TESTCASE_SETUP)
$(BUILD_BOOT_RUN_QT_LS3_SYSTEM_TOOL_SETUP)
endef
define BOOT_RUN_INSTALL_STAGING_CMDS
echo "nothing to do"
endef
ifeq ($(BR2_INIT_SYSTEMD),y)
define BOOT_RUN_INSTALL_TARGET_CMDS
echo "install boot_run.service and boot_run.sh"
mkdir -p $(TARGET_DIR)/usr/lib/systemd/system/multi-user.target.wants
cd $(@D) && cp boot_run.service $(TARGET_DIR)/usr/lib/systemd/system/
cd $(TARGET_DIR)/usr/lib/systemd/system/multi-user.target.wants && ln -b -s ../boot_run.service boot_run_service
cd $(@D) && chmod a+x ./boot_run.sh && cp boot_run.sh $(TARGET_DIR)/root/
endef
else
define BOOT_RUN_INSTALL_TARGET_CMDS
echo "install boot_run.sh"
mkdir -p $(TARGET_DIR)/etc/init.d
cd $(@D) && chmod a+x S90_boot_run && cp S90_boot_run $(TARGET_DIR)/etc/init.d/
cd $(@D) && chmod a+x ./boot_run.sh && cp boot_run.sh $(TARGET_DIR)/root/
endef
endif
define BUILD_BOOT_RUN_ADD_TLS_LINK
mkdir -p $(TARGET_DIR)/usr/lib64/tls; cd $(TARGET_DIR)/usr/lib64/tls; if ! test -L loongarch ; then ln -s ../../lib64/ loongarch; fi
endef
BOOT_RUN_TARGET_FINALIZE_HOOKS += BUILD_BOOT_RUN_PROFILE_ADD_QT_TSLIB_EXPORT
BOOT_RUN_TARGET_FINALIZE_HOOKS += BUILD_BOOT_RUN_ADD_TLS_LINK
$(eval $(generic-package))
Binary file not shown.
@@ -0,0 +1,23 @@
diff -Nprua busybox-1.36.1-ori/profile busybox-1.36.1/profile
--- busybox-1.36.1-ori/profile 1970-01-01 08:00:00.000000000 +0800
+++ busybox-1.36.1/profile 2024-10-16 10:58:02.097197129 +0800
@@ -0,0 +1,19 @@
+export PATH="/bin:/sbin:/usr/bin:/usr/sbin"
+
+if [ "$PS1" ]; then
+ if [ "`id -u`" -eq 0 ]; then
+ export PS1='[\u@\h \W]# '
+ else
+ export PS1='$ '
+ fi
+fi
+
+export EDITOR='/bin/vi'
+
+# Source configuration files from /etc/profile.d
+for i in /etc/profile.d/*.sh ; do
+ if [ -r "$i" ]; then
+ . $i
+ fi
+done
+unset i
+3 -3
View File
@@ -140,7 +140,7 @@ CONFIG_TRY_LOOP_CONFIGURE=y
# CONFIG_FEATURE_SEAMLESS_XZ is not set
# CONFIG_FEATURE_SEAMLESS_LZMA is not set
# CONFIG_FEATURE_SEAMLESS_BZ2 is not set
# CONFIG_FEATURE_SEAMLESS_GZ is not set
CONFIG_FEATURE_SEAMLESS_GZ=y
# CONFIG_FEATURE_SEAMLESS_Z is not set
CONFIG_AR=y
# CONFIG_FEATURE_AR_LONG_FILENAMES is not set
@@ -184,7 +184,7 @@ CONFIG_FEATURE_TAR_CREATE=y
# CONFIG_FEATURE_TAR_AUTODETECT is not set
CONFIG_FEATURE_TAR_FROM=y
# CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set
# CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set
CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY=y
CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
CONFIG_FEATURE_TAR_TO_COMMAND=y
# CONFIG_FEATURE_TAR_UNAME_GNAME is not set
@@ -688,7 +688,7 @@ CONFIG_RDATE=y
# CONFIG_RDEV is not set
CONFIG_READPROFILE=y
CONFIG_RENICE=y
# CONFIG_REV is not set
CONFIG_REV=y
# CONFIG_RTCWAKE is not set
# CONFIG_SCRIPT is not set
# CONFIG_SCRIPTREPLAY is not set
+56
View File
@@ -234,19 +234,58 @@ define BUSYBOX_SET_INIT
endef
ifeq ($(BR2_TARGET_GENERIC_GETTY),y)
ifeq ($(BR2_TARGET_GENERIC_GETTY_AUTOLOGIN),y)
define BUSYBOX_SET_GETTY
$(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(SYSTEM_GETTY_PORT)::respawn:/sbin/getty -L $(SYSTEM_GETTY_OPTIONS) $(SYSTEM_GETTY_PORT) $(SYSTEM_GETTY_BAUDRATE) $(SYSTEM_GETTY_TERM) -l ls-autologin -n #~' \
$(TARGET_DIR)/etc/inittab
endef
else
define BUSYBOX_SET_GETTY
$(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(SYSTEM_GETTY_PORT)::respawn:/sbin/getty -L $(SYSTEM_GETTY_OPTIONS) $(SYSTEM_GETTY_PORT) $(SYSTEM_GETTY_BAUDRATE) $(SYSTEM_GETTY_TERM) #~' \
$(TARGET_DIR)/etc/inittab
endef
endif # BR2_TARGET_GENERIC_GETTY_AUTOLOGIN
else
ifeq ($(BR2_TARGET_GENERIC_GETTY_AUTOLOGIN),y)
define BUSYBOX_SET_GETTY
$(SED) '/# GENERIC_SERIAL$$/s~^.*#~#ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100 -l ls-autologin -n #~' $(TARGET_DIR)/etc/inittab
endef
else
define BUSYBOX_SET_GETTY
$(SED) '/# GENERIC_SERIAL$$/s~^.*#~#ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100 #~' $(TARGET_DIR)/etc/inittab
endef
endif # BR2_TARGET_GENERIC_GETTY_AUTOLOGIN
endif # BR2_TARGET_GENERIC_GETTY
ifeq ($(BR2_TARGET_TTY0_GETTY_ENABLE),y)
ifeq ($(BR2_TARGET_GENERIC_GETTY_AUTOLOGIN),y)
define BUSYBOX_SET_GETTY_TTY0
$(SED) '/# tty0-console$$/d' $(TARGET_DIR)/etc/inittab
$(SED) '/^ttyS*/a tty0::respawn:/sbin/getty -L $(SYSTEM_GETTY_OPTIONS) tty0 $(SYSTEM_GETTY_BAUDRATE) $(SYSTEM_GETTY_TERM) -l ls-autologin -n # tty0-console' \
$(TARGET_DIR)/etc/inittab
endef
else
define BUSYBOX_SET_GETTY_TTY0
$(SED) '/# tty0-console$$/d' $(TARGET_DIR)/etc/inittab
$(SED) '/^ttyS*/a tty0::respawn:/sbin/getty -L $(SYSTEM_GETTY_OPTIONS) tty0 $(SYSTEM_GETTY_BAUDRATE) $(SYSTEM_GETTY_TERM) # tty0-console' \
$(TARGET_DIR)/etc/inittab
endef
endif # BR2_TARGET_GENERIC_GETTY_AUTOLOGIN
else
define BUSYBOX_SET_GETTY_TTY0
$(SED) '/# tty0-console$$/d' $(TARGET_DIR)/etc/inittab
endef
endif # BR2_TARGET_TTY0_GETTY_ENABLE
BUSYBOX_TARGET_FINALIZE_HOOKS += BUSYBOX_SET_GETTY
BUSYBOX_TARGET_FINALIZE_HOOKS += BUSYBOX_SET_GETTY_TTY0
BUSYBOX_TARGET_FINALIZE_HOOKS += SYSTEM_REMOUNT_ROOT_INITTAB
BUSYBOX_TARGET_FINALIZE_HOOKS += BUSYBOX_SET_AUTO_LOGIN
endif # BR2_INIT_BUSYBOX
ifeq ($(BR2_PACKAGE_BUSYBOX_SELINUX),y)
@@ -417,6 +456,21 @@ define BUSYBOX_BUILD_CMDS
$(BUSYBOX_MAKE_ENV) $(MAKE) $(BUSYBOX_MAKE_OPTS) -C $(@D)
endef
ifeq ($(BR2_INIT_SYSTEMD),y)
define CHANGE_LINUXRC_INIT_CMDS
cd $(TARGET_DIR) && rm linuxrc && ln -s /sbin/init linuxrc
endef
else
define CHANGE_LINUXRC_INIT_CMDS
endef
endif
ifeq ($(BR2_BUSYBOX_PROFILE), y)
define BUSYBOX_INSTALL_ETC_PROFILE
cp $(@D)/profile $(TARGET_DIR)/etc/profile
endef
endif
define BUSYBOX_INSTALL_TARGET_CMDS
# Use the 'noclobber' install rule, to prevent BusyBox from overwriting
# any full-blown versions of apps installed by other packages.
@@ -426,6 +480,8 @@ define BUSYBOX_INSTALL_TARGET_CMDS
$(BUSYBOX_INSTALL_UDHCPC_SCRIPT)
$(BUSYBOX_INSTALL_ZCIP_SCRIPT)
$(BUSYBOX_INSTALL_MDEV_CONF)
$(CHANGE_LINUXRC_INIT_CMDS)
$(BUSYBOX_INSTALL_ETC_PROFILE)
endef
# Install the sysvinit scripts, for the moment, but not those that already
+11
View File
@@ -19,6 +19,17 @@ config BR2_PACKAGE_DHCP_SERVER
query, and possibly change, the server's state via the Object
Management API (OMAPI).
config BR2_PACKAGE_DHCP_SERVER_DISABLE
bool "dhcp server disable"
depends on BR2_PACKAGE_DHCP_SERVER
default y
help
DHCP server from the ISC DHCP distribution.
but when not a runable conf file,
systemd server will report boot failed so that user will have a doubt.
so enable this systemd server after user customized conf file maybe better.
config BR2_PACKAGE_DHCP_SERVER_DELAYED_ACK
bool "Enable delayed ACK feature"
depends on BR2_PACKAGE_DHCP_SERVER
+12
View File
@@ -21,6 +21,14 @@ endif
HOST_GCC_LICENSE = GPL-2.0, GPL-3.0, LGPL-2.1, LGPL-3.0
HOST_GCC_LICENSE_FILES = COPYING COPYING3 COPYING.LIB COPYING3.LIB
ifeq ($(BR2_TOOLCHAIN_BUILDROOT_GLIBC),y)
GCC_STD_LIB_NAME=gnu
else ifeq ($(BR2_TOOLCHAIN_BUILDROOT_MUSL),y)
GCC_STD_LIB_NAME=musl
else
GCC_STD_LIB_NAME=
endif
#
# Xtensa special hook
#
@@ -357,16 +365,20 @@ define HOST_GCC_INSTALL_WRAPPER_AND_SIMPLE_SYMLINKS
;; \
*-ar|*-ranlib|*-nm) \
ln -snf $$i $(ARCH)-linux$${i##$(GNU_TARGET_NAME)}; \
ln -snf $$i $(ARCH)-linux-$(GCC_STD_LIB_NAME)$${i##$(GNU_TARGET_NAME)}; \
;; \
*cc|*cc-*|*++|*++-*|*cpp|*-gfortran|*-gdc) \
rm -f $$i.br_real; \
mv $$i $$i.br_real; \
ln -sf toolchain-wrapper $$i; \
ln -sf toolchain-wrapper $(ARCH)-linux$${i##$(GNU_TARGET_NAME)}; \
ln -sf toolchain-wrapper $(ARCH)-linux-$(GCC_STD_LIB_NAME)$${i##$(GNU_TARGET_NAME)}; \
ln -snf $$i.br_real $(ARCH)-linux$${i##$(GNU_TARGET_NAME)}.br_real; \
ln -snf $$i.br_real $(ARCH)-linux-$(GCC_STD_LIB_NAME)$${i##$(GNU_TARGET_NAME)}.br_real; \
;; \
*) \
ln -snf $$i $(ARCH)-linux$${i##$(GNU_TARGET_NAME)}; \
ln -snf $$i $(ARCH)-linux-$(GCC_STD_LIB_NAME)$${i##$(GNU_TARGET_NAME)}; \
;; \
esac; \
done
Binary file not shown.
@@ -0,0 +1,57 @@
From b85880633f69b737050c22eede858f8c13bb2248 Mon Sep 17 00:00:00 2001
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri, 18 Aug 2023 14:59:51 -0300
Subject: [PATCH] m68k: Fix build with -mcpu=68040 or higher (BZ 30740)
GCC currently does not define __mc68020__ for -mcpu=68040 or higher,
which memcpy/memmove assumptions. Since this memory copy optimization
seems only intended for m68020, disable for other m680X0 variants.
Checked on a build for m68k-linux-gnu target mc68020 and mc68040.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Upstream: https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=b85880633f69b737050c22eede858f8c13bb2248
---
sysdeps/m68k/m680x0/m68020/wordcopy.S | 1 -
sysdeps/m68k/wordcopy.c | 21 +++++++++++++++++++++
2 files changed, 21 insertions(+), 1 deletion(-)
delete mode 100644 sysdeps/m68k/m680x0/m68020/wordcopy.S
create mode 100644 sysdeps/m68k/wordcopy.c
diff --git a/sysdeps/m68k/m680x0/m68020/wordcopy.S b/sysdeps/m68k/m680x0/m68020/wordcopy.S
deleted file mode 100644
index 4fb1a4518f..0000000000
--- a/sysdeps/m68k/m680x0/m68020/wordcopy.S
+++ /dev/null
@@ -1 +0,0 @@
-/* Empty, not needed. */
diff --git a/sysdeps/m68k/wordcopy.c b/sysdeps/m68k/wordcopy.c
new file mode 100644
index 0000000000..f12d5b7803
--- /dev/null
+++ b/sysdeps/m68k/wordcopy.c
@@ -0,0 +1,21 @@
+/* Definitions for memory copy functions. Motorola 680X0 version
+ Copyright (C) 2023 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef __mc68020__
+# include <string/wordcopy.c>
+#endif
--
2.39.2
@@ -0,0 +1,47 @@
From 464fd8249e8b791248cab7b0e0cd91757435fa9e Mon Sep 17 00:00:00 2001
From: Andreas Schwab <schwab@linux-m68k.org>
Date: Thu, 17 Aug 2023 17:15:34 +0200
Subject: [PATCH] m68k: fix __mpn_lshift and __mpn_rshift for non-68020
From revision 03f3d275d0d6 in the gmp repository.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Upstream: https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=464fd8249e8b791248cab7b0e0cd91757435fa9e
---
sysdeps/m68k/m680x0/lshift.S | 4 ++--
sysdeps/m68k/m680x0/rshift.S | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/sysdeps/m68k/m680x0/lshift.S b/sysdeps/m68k/m680x0/lshift.S
index 2aee10348e..4240738959 100644
--- a/sysdeps/m68k/m680x0/lshift.S
+++ b/sysdeps/m68k/m680x0/lshift.S
@@ -77,8 +77,8 @@ L(Lnormal:)
#else /* not mc68000 */
movel R(s_size),R(d0)
asll #2,R(d0)
- addl R(s_size),R(s_ptr)
- addl R(s_size),R(res_ptr)
+ addl R(d0),R(s_ptr)
+ addl R(d0),R(res_ptr)
#endif
movel MEM_PREDEC(s_ptr),R(d2)
movel R(d2),R(d0)
diff --git a/sysdeps/m68k/m680x0/rshift.S b/sysdeps/m68k/m680x0/rshift.S
index d16bca9307..d56a2b4a44 100644
--- a/sysdeps/m68k/m680x0/rshift.S
+++ b/sysdeps/m68k/m680x0/rshift.S
@@ -127,8 +127,8 @@ L(Lspecial:)
#else /* not mc68000 */
movel R(s_size),R(d0)
asll #2,R(d0)
- addl R(s_size),R(s_ptr)
- addl R(s_size),R(res_ptr)
+ addl R(d0),R(s_ptr)
+ addl R(d0),R(res_ptr)
#endif
clrl R(d0) /* initialize carry */
--
2.39.2
@@ -0,0 +1,93 @@
From 87ced255bdf2681f5bf6c89d7121e59f6f342161 Mon Sep 17 00:00:00 2001
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri, 18 Aug 2023 14:49:31 -0300
Subject: [PATCH] m68k: Use M68K_SCALE_AVAILABLE on __mpn_lshift and
__mpn_rshift
This patch adds a new macro, M68K_SCALE_AVAILABLE, similar to gmp
scale_available_p (mpn/m68k/m68k-defs.m4) that expand to 1 if a
scale factor can be used in addressing modes. This is used
instead of __mc68020__ for some optimization decisions.
Checked on a build for m68k-linux-gnu target mc68020 and mc68040.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Upstream: https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=87ced255bdf2681f5bf6c89d7121e59f6f342161
---
sysdeps/m68k/m680x0/lshift.S | 6 +++---
sysdeps/m68k/m680x0/rshift.S | 8 ++++----
sysdeps/m68k/m680x0/sysdep.h | 7 +++++++
3 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/sysdeps/m68k/m680x0/lshift.S b/sysdeps/m68k/m680x0/lshift.S
index 4240738959..74de90380b 100644
--- a/sysdeps/m68k/m680x0/lshift.S
+++ b/sysdeps/m68k/m680x0/lshift.S
@@ -57,9 +57,9 @@ ENTRY(__mpn_lshift)
bne L(Lnormal)
cmpl R(s_ptr),R(res_ptr)
bls L(Lspecial) /* jump if s_ptr >= res_ptr */
-#if (defined (__mc68020__) || defined (__NeXT__) || defined(mc68020))
+#if M68K_SCALE_AVAILABLE
lea MEM_INDX1(s_ptr,s_size,l,4),R(a2)
-#else /* not mc68020 */
+#else
movel R(s_size),R(d0)
asll #2,R(d0)
lea MEM_INDX(s_ptr,d0,l),R(a2)
@@ -71,7 +71,7 @@ L(Lnormal:)
moveql #32,R(d5)
subl R(cnt),R(d5)
-#if (defined (__mc68020__) || defined (__NeXT__) || defined(mc68020))
+#if M68K_SCALE_AVAILABLE
lea MEM_INDX1(s_ptr,s_size,l,4),R(s_ptr)
lea MEM_INDX1(res_ptr,s_size,l,4),R(res_ptr)
#else /* not mc68000 */
diff --git a/sysdeps/m68k/m680x0/rshift.S b/sysdeps/m68k/m680x0/rshift.S
index d56a2b4a44..d398d0287e 100644
--- a/sysdeps/m68k/m680x0/rshift.S
+++ b/sysdeps/m68k/m680x0/rshift.S
@@ -56,9 +56,9 @@ ENTRY(__mpn_rshift)
bne L(Lnormal)
cmpl R(res_ptr),R(s_ptr)
bls L(Lspecial) /* jump if res_ptr >= s_ptr */
-#if (defined (__mc68020__) || defined (__NeXT__) || defined(mc68020))
+#if M68K_SCALE_AVAILABLE
lea MEM_INDX1(res_ptr,s_size,l,4),R(a2)
-#else /* not mc68020 */
+#else
movel R(s_size),R(d0)
asll #2,R(d0)
lea MEM_INDX(res_ptr,d0,l),R(a2)
@@ -121,10 +121,10 @@ L(Lend:)
cfi_restore_state
L(Lspecial:)
-#if (defined (__mc68020__) || defined (__NeXT__) || defined(mc68020))
+#if M68K_SCALE_AVAILABLE
lea MEM_INDX1(s_ptr,s_size,l,4),R(s_ptr)
lea MEM_INDX1(res_ptr,s_size,l,4),R(res_ptr)
-#else /* not mc68000 */
+#else
movel R(s_size),R(d0)
asll #2,R(d0)
addl R(d0),R(s_ptr)
diff --git a/sysdeps/m68k/m680x0/sysdep.h b/sysdeps/m68k/m680x0/sysdep.h
index b31e101273..bee5b3391c 100644
--- a/sysdeps/m68k/m680x0/sysdep.h
+++ b/sysdeps/m68k/m680x0/sysdep.h
@@ -37,3 +37,10 @@
OP " " SRC "(" PC "), " DST
#endif /* __ASSEMBLER__ */
+
+# if defined __mc68020__ || defined __mc68030__ || defined __mc68040__ \
+ || defined __mc68060__
+# define M68K_SCALE_AVAILABLE 1
+# else
+# define M68K_SCALE_AVAILABLE 0
+# endif
--
2.39.2
+2 -2
View File
@@ -1,7 +1,7 @@
# Locally calculated (fetched from Github)
sha256 2858e8e47c4c0df32b526c56d5590ec939e8178201ee9526bb070999ce4aa1f2 glibc-2.39-74-g198632a05f6c7b9ab67d3331d8caace9ceabb685.tar.gz
sha256 e38f4284d6909c6b5db7d79c6e450daeaf136a67e547290eec0b063a55eaaa42 glibc-2.38-44-gd37c2b20a4787463d192b32041c3406c2bd91de0.tar.gz
# Hashes for license files
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
sha256 bba29819a3e938fae92674d6a88533e10605e389da8b51cdcba0a94f6221c5bc LICENSES
sha256 b33d0bd9f685b46853548814893a6135e74430d12f6d94ab3eba42fc591f83bc LICENSES
+27 -10
View File
@@ -7,7 +7,7 @@
# Generate version string using:
# git describe --match 'glibc-*' --abbrev=40 origin/release/MAJOR.MINOR/master | cut -d '-' -f 2-
# When updating the version, please also update localedef
GLIBC_VERSION = 2.39-74-g198632a05f6c7b9ab67d3331d8caace9ceabb685
GLIBC_VERSION = 2.38-44-gd37c2b20a4787463d192b32041c3406c2bd91de0
# Upstream doesn't officially provide an https download link.
# There is one (https://sourceware.org/git/glibc.git) but it's not reliable,
# sometimes the connection times out. So use an unofficial github mirror.
@@ -24,17 +24,33 @@ GLIBC_CPE_ID_VENDOR = gnu
# allow proper matching with the CPE database.
GLIBC_CPE_ID_VERSION = $(word 1, $(subst -,$(space),$(GLIBC_VERSION)))
# Fixed by glibc-2.39-31-g31da30f23cddd36db29d5b6a1c7619361b271fb4
GLIBC_IGNORE_CVES += CVE-2024-2961
# Fixed by b25508dd774b617f99419bdc3cf2ace4560cd2d6, which is between
# 2.38 and the version we're really using
GLIBC_IGNORE_CVES += CVE-2023-4527
# Fixed by glibc-2.39-35-g1263d583d2e28afb8be53f8d6922f0842036f35d
GLIBC_IGNORE_CVES += CVE-2024-33599
# Fixed by 5ee59ca371b99984232d7584fe2b1a758b4421d3, which is between
# 2.38 and the version we're really using
GLIBC_IGNORE_CVES += CVE-2023-4806
# Fixed by glibc-2.39-37-gc99f886de54446cd4447db6b44be93dabbdc2f8b
GLIBC_IGNORE_CVES += CVE-2024-33600
# Fixed by 750a45a783906a19591fb8ff6b7841470f1f5710, which is between
# 2.38 and the version we're really using.
GLIBC_IGNORE_CVES += CVE-2023-4911
# Fixed by glibc-2.39-38-ga9a8d3eebb145779a18d90e3966009a1daa63cd
GLIBC_IGNORE_CVES += CVE-2024-33601 CVE-2024-33602
# Fixed by 5ee59ca371b99984232d7584fe2b1a758b4421d3, which is between
# 2.38 and the version we're really using.
GLIBC_IGNORE_CVES += CVE-2023-5156
# Fixed by 23514c72b780f3da097ecf33a793b7ba9c2070d2, which is between
# 2.38 and the version we're really using.
GLIBC_IGNORE_CVES += CVE-2023-6246
# Fixed by d0338312aace5bbfef85e03055e1212dd0e49578, which is between
# 2.38 and the version we're really using.
GLIBC_IGNORE_CVES += CVE-2023-6779
# Fixed by d37c2b20a4787463d192b32041c3406c2bd91de0, which is between
# 2.38 and the version we're really using.
GLIBC_IGNORE_CVES += CVE-2023-6780
# All these CVEs are considered as not being security issues by
# upstream glibc:
@@ -179,6 +195,7 @@ define GLIBC_CONFIGURE_CMDS
--without-gd \
--with-headers=$(STAGING_DIR)/usr/include \
$(if $(BR2_aarch64)$(BR2_aarch64_be),--enable-mathvec) \
--enable-crypt \
$(GLIBC_CONF_OPTS))
$(GLIBC_ADD_MISSING_STUB_H)
endef
@@ -189,7 +206,7 @@ endef
#
GLIBC_LIBS_LIB = \
ld*.so.* libanl.so.* libc.so.* libdl.so.* libgcc_s.so.* \
ld*.so.* libanl.so.* libc.so.* libcrypt.so.* libdl.so.* libgcc_s.so.* \
libm.so.* libpthread.so.* libresolv.so.* librt.so.* \
libutil.so.* libnss_files.so.* libnss_dns.so.* libmvec.so.*
+2
View File
@@ -19,3 +19,5 @@ config BR2_PACKAGE_LIBXKBCOMMON_TOOLS
xkbcli-interactive-wayland
endif
source "package/libxkbcommon_rules/Config.in"
+13
View File
@@ -0,0 +1,13 @@
config BR2_PACKAGE_LIBXKBCOMMON_RULES
bool "libxkbcommon rules"
depends on BR2_PACKAGE_LIBXKBCOMMON
default y
help
xkbcommon is a keymap compiler and support library which
processes a reduced subset of keymaps as defined by the XKB
specification.
and if you want to use xkb successfully
you should add xkb rules in /etc/(not only this path but default install in here)
http://xkbcommon.org/
@@ -0,0 +1,28 @@
################################################################################
#
# libxkbcommon_rules
#
################################################################################
LIBXKBCOMMON_RULES_BUILD_DIR_NAME = libxkbcommon_rules
LIBXKBCOMMON_RULES_SITE = $(TOPDIR)/package/libxkbcommon_rules/xkb.tar.gz
LIBXKBCOMMON_RULES_METHOD = file
LIBXKBCOMMON_RULES_DEPENDENCIES = libxkbcommon
define LIBXKBCOMMON_RULES_EXTRACT_CMDS
tar -zxf $(LIBXKBCOMMON_RULES_SITE) -C $(BUILD_DIR)/$(LIBXKBCOMMON_RULES_BUILD_DIR_NAME)
endef
define LIBXKBCOMMON_RULES_CONFIGURE_CMDS
echo "nothing to do"
endef
define LIBXKBCOMMON_RULES_BUILD_CMDS
echo "nothing to do"
endef
define LIBXKBCOMMON_RULES_INSTALL_TARGET_CMDS
cd $(BUILD_DIR)/$(LIBXKBCOMMON_RULES_BUILD_DIR_NAME) && cp -r xkb $(TOPDIR)/output/target/etc/
endef
$(eval $(generic-package))
Binary file not shown.
@@ -0,0 +1,7 @@
config BR2_PACKAGE_LOONGSON_CUSTOM_INPUTRC
bool "use custom inputrc"
depends on BR2_PACKAGE_READLINE
default y
help
custom inputrc
/etc/inputrc
+45
View File
@@ -0,0 +1,45 @@
# /etc/inputrc - global inputrc for libreadline
# See readline(3readline) and `info readline' for more information.
# Be 8 bit clean.
set input-meta on
set output-meta on
#set bell-style visible
set bell-style none
# To allow the use of 8bit-characters like the german umlauts, comment out
# the line below. However this makes the meta key not work as a meta key,
# which is annoying to those which don't need to type in 8-bit characters.
# set convert-meta off
"\e0d": backward-word
"\e0c": forward-word
"\e[h": beginning-of-line
"\e[f": end-of-line
"\e[1~": beginning-of-line
"\e[4~": end-of-line
#"\e[5~": beginning-of-history
#"\e[6~": end-of-history
"\e[3~": delete-char
"\e[2~": quoted-insert
# Common standard keypad and cursor
# (codes courtsey Werner Fink, <werner@suse.de>)
#"\e[1~": history-search-backward
"\e[2~": yank
"\e[3~": delete-char
#"\e[4~": set-mark
"\e[5~": history-search-backward
"\e[6~": history-search-forward
# Normal keypad and cursor of xterm
"\e[F": end-of-line
"\e[H": beginning-of-line
# Application keypad and cursor of xterm
"\eOA": previous-history
"\eOC": forward-char
"\eOB": next-history
"\eOD": backward-char
"\eOF": end-of-line
"\eOH": beginning-of-line
@@ -0,0 +1,23 @@
################################################################################
#
# loongson_custom_inputrc
#
################################################################################
LOONGSON_CUSTOM_INPUTRC_SITE=$(TOPDIR)/package/loongson_custom_inputrc/inputrc
LOONGSON_CUSTOM_INPUTRC_SITE_METHOD=file
LOONGSON_CUSTOM_INPUTRC_DEPENDENCIES=readline
define LOONGSON_CUSTOM_INPUTRC_EXTRACT_CMDS
echo "do nothing"
endef
define LOONGSON_CUSTOM_INPUTRC_BUILD_CMDS
echo "do nothing"
endef
define LOONGSON_CUSTOM_INPUTRC_INSTALL_TARGET_CMDS
cp $(LOONGSON_CUSTOM_INPUTRC_SITE) $(TARGET_DIR)/etc
endef
$(eval $(generic-package))
@@ -0,0 +1,7 @@
config BR2_PACKAGE_LOONGSON_CUSTOM_TIMESYNCD_CONF
bool "use custom timesyncd.conf"
depends on BR2_PACKAGE_SYSTEMD
default y
help
custom timesyncd.conf
/etc/systemd/timesyncd.conf
@@ -0,0 +1,23 @@
################################################################################
#
# loongson_custom_timesyncd_conf
#
################################################################################
LOONGSON_CUSTOM_TIMESYNCD_CONF_SITE=$(TOPDIR)/package/loongson_custom_timesyncd_conf/timesyncd.conf
LOONGSON_CUSTOM_TIMESYNCD_CONF_SITE_METHOD=file
LOONGSON_CUSTOM_TIMESYNCD_CONF_DEPENDENCIES=systemd
define LOONGSON_CUSTOM_TIMESYNCD_CONF_EXTRACT_CMDS
echo "do nothing"
endef
define LOONGSON_CUSTOM_TIMESYNCD_CONF_BUILD_CMDS
echo "do nothing"
endef
define LOONGSON_CUSTOM_TIMESYNCD_CONF_INSTALL_TARGET_CMDS
cp $(LOONGSON_CUSTOM_TIMESYNCD_CONF_SITE) $(TARGET_DIR)/etc/systemd/
endef
$(eval $(generic-package))
@@ -0,0 +1,19 @@
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
#
# Entries in this file show the compile time defaults.
# You can change settings by editing this file.
# Defaults can be restored by simply deleting this file.
#
# See timesyncd.conf(5) for details.
[Time]
NTP=ntp.ntsc.ac.cn
#FallbackNTP=time1.google.com time2.google.com time3.google.com time4.google.com
#RootDistanceMaxSec=5
#PollIntervalMinSec=32
#PollIntervalMaxSec=2048
+7
View File
@@ -0,0 +1,7 @@
config BR2_PACKAGE_LOONGSON_CUSTOM_VIMRC
bool "use custom vimrc"
depends on BR2_PACKAGE_VIM
default y
help
custom vimrc
/usr/share/vim/vimrc
@@ -0,0 +1,23 @@
################################################################################
#
# loongson_custom_vimrc
#
################################################################################
LOONGSON_CUSTOM_VIMRC_SITE=$(TOPDIR)/package/loongson_custom_vimrc/vimrc
LOONGSON_CUSTOM_VIMRC_SITE_METHOD=file
LOONGSON_CUSTOM_VIMRC_DEPENDENCIES=vim
define LOONGSON_CUSTOM_VIMRC_EXTRACT_CMDS
echo "do nothing"
endef
define LOONGSON_CUSTOM_VIMRC_BUILD_CMDS
echo "do nothing"
endef
define LOONGSON_CUSTOM_VIMRC_INSTALL_TARGET_CMDS
cp $(LOONGSON_CUSTOM_VIMRC_SITE) $(TARGET_DIR)/usr/share/vim/
endef
$(eval $(generic-package))
+1
View File
@@ -0,0 +1 @@
set encoding=utf8
+33
View File
@@ -0,0 +1,33 @@
config BR2_PACKAGE_LOONGSON_KERNEL
bool "Loongson Linux Kernel"
help
Enable this option if you want to put a Linux kernel(uImage)
in /boot dir
config BR2_PACKAGE_LOONGSON_KERNEL_HOSTSITE
string "uImage Host site"
depends on BR2_PACKAGE_LOONGSON_KERNEL
default ""
config BR2_PACKAGE_LOONGSON_KERNEL_USER
string "uImage Host User"
depends on BR2_PACKAGE_LOONGSON_KERNEL
default ""
config BR2_PACKAGE_LOONGSON_KERNEL_PASSWORD
string "uImage Host password"
depends on BR2_PACKAGE_LOONGSON_KERNEL
default ""
config BR2_PACKAGE_LOONGSON_KERNEL_PATH
string "uImage file path in host site"
depends on BR2_PACKAGE_LOONGSON_KERNEL
config BR2_PACKAGE_LOONGSON_KERNEL_MODULES
bool "Loongson Linux Kernel Modules"
depends on BR2_PACKAGE_LOONGSON_KERNEL
default y
help
Enable this option if you want to put kernel objects in /usr/lib/modules
@@ -0,0 +1,32 @@
################################################################################
#
# LoongsonGD Linux kernel target
#
################################################################################
LOONGSON_KERNEL_SITE = $(TOPDIR)/package/loongson_kernel/loongson_kernel.tar.gz
LOONGSON_KERNEL_SITE_METHOD = file
ifeq ($(BR2_PACKAGE_LOONGSON_KERNEL_MODULES),y)
define INSTALL_KERNEL_OR_WITH_MODULES
mkdir -p $(TARGET_DIR)/boot
cd $(@D) && cp uImage $(TARGET_DIR)/boot
cd $(@D) && mv lib/modules/ $(TARGET_DIR)/usr/lib/
endef
else
define INSTALL_KERNEL_OR_WITH_MODULES
mkdir -p $(TARGET_DIR)/boot
cd $(@D) && cp uImage $(TARGET_DIR)/boot
endef
endif
define LOONGSON_KERNEL_EXTRACT_CMDS
tar -xzf $(LOONGSON_KERNEL_SITE) -C $(@D)/ --strip-components 1
endef
define LOONGSON_KERNEL_INSTALL_TARGET_CMDS
echo "install LSGD Kernel"
$(INSTALL_KERNEL_OR_WITH_MODULES)
endef
$(eval $(generic-package))
Binary file not shown.
+10
View File
@@ -0,0 +1,10 @@
config BR2_PACKAGE_LOONGSON_RESIZE
bool "loongson system resize rootfs"
depends on BR2_INIT_SYSTEMD || BR2_INIT_BUSYBOX
select BR2_PACKAGE_PARTED
select BR2_PACKAGE_E2FSPROGS_RESIZE2FS
help
Resize rootfs when first startup, if device parted,
rootfs should in last part, otherwise cannot resize
rootfs partition
@@ -0,0 +1,32 @@
################################################################################
#
# loongson_resize
#
################################################################################
LOONGSON_RESIZE_SITE = $(TOPDIR)/package/loongson_resize/loongson_resize.tar.gz
LOONGSON_RESIZE_SITE_METHOD = file
define LOONGSON_RESIZE_EXTRACT_CMDS
echo $(LOONGSON_RESIZE_SITE)
tar -zxf $(LOONGSON_RESIZE_SITE) -C $(@D)/
endef
define LOONGSON_RESIZE_INSTALL_STAGING_CMDS
echo "nothing to do"
endef
ifeq ($(BR2_INIT_SYSTEMD) ,y)
define LOONGSON_RESIZE_INSTALL_TARGET_CMDS
echo "install loongson resize init.d/profile.d"
mkdir -p $(TARGET_DIR)/usr/local/ls_resize
cd $(@D) && chmod a+x ./resizerootfs.sh && cp resizerootfs.sh $(TARGET_DIR)/usr/local/ls_resize/
cd $(@D) && chmod a+x ./fdisk_resize.sh && cp fdisk_resize.sh $(TARGET_DIR)/usr/local/ls_resize/
mkdir -p $(TARGET_DIR)/etc/init.d
cd $(@D) && chmod a+x ./S03resizerootfs && cp S03resizerootfs $(TARGET_DIR)/etc/init.d
cd $(@D) && cp loongson-resize.service $(TARGET_DIR)/usr/lib/systemd/system/
cd $(TARGET_DIR)/usr/lib/systemd/system/sysinit.target.wants && ln -sf ../loongson-resize.service loongson-resize.service
endef
endif
$(eval $(generic-package))
Binary file not shown.
+7
View File
@@ -0,0 +1,7 @@
config BR2_PACKAGE_LS2_SYS_CONFIG_TOOL
bool "ls2k(embedded system) sys config tool"
default y
help
this is a sofeware for loongson-gd embedded board(just like ls2k)
help user to setup board
can update uboot kernel rootfs
@@ -0,0 +1,84 @@
################################################################################
#
# ls2_sys_config_tool
#
################################################################################
LS2_SYS_CONFIG_TOOL_VERSION = origin/master
LS2_SYS_CONFIG_TOOL_SITE = http://192.168.1.5/sys_config_tool
LS2_SYS_CONFIG_TOOL_SITE_METHOD = git
LS2_SYS_CONFIG_TOOL_GIT_SUBMODULES = YES
LS2_SYS_CONFIG_TOOL_CFLAGS = $(TARGET_CFLAGS)
ifeq ($(BR2_INIT_SYSTEMD),y)
LS2_SYS_CONFIG_TOOL_DEPLOY_WAY=1
else
LS2_SYS_CONFIG_TOOL_DEPLOY_WAY=0
endif
ifeq ($(BR2_PACKAGE_LS2_SYS_CONFIG_TOOL_QT),y)
LS2_SYS_CONFIG_TOOL_DEPENDENCIES = qt5base
endif
#define LS2_SYS_CONFIG_TOOL_EXTRACT_CMDS
#endef
#$(TARGET_MAKE_ENV) $(MAKE) CC=$(TARGET_CC) AR=$(TARGET_AR) -C $(@D)
ifeq ($(BR2_PACKAGE_LS2_SYS_CONFIG_TOOL_QT),y)
define LS2_SYS_CONFIG_TOOL_BUILD_QT_VER_CMDS
cd $(@D)/Qtver/LS2_SYS_CONFIG_TOOL/ && $(HOST_DIR)/bin/qmake LS2_SYS_CONFIG_TOOL.pro && $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/Qtver/LS2_SYS_CONFIG_TOOL/
endef
define LS2_SYS_CONFIG_TOOL_INSTALL_QT_VER_CMDS
echo "install Qt version sofeware" && cd $(@D)/Qtver/LS2_SYS_CONFIG_TOOL/ && cp LS2_SYS_CONFIG_TOOL $(TARGET_DIR)/root/loongson_test_case/
endef
else
define LS2_SYS_CONFIG_TOOL_BUILD_QT_VER_CMDS
echo "not build Qt version"
endef
define LS2_SYS_CONFIG_TOOL_INSTALL_QT_VER_CMDS
echo "not install Qt version"
endef
endif
ifeq ($(BR2_PACKAGE_LS2_SYS_CONFIG_TOOL_QT_AUTO_START),y)
ifeq ($(BR2_PACKAGE_BOOT_RUN),y)
define LS2_SYS_CONFIG_TOOL_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS
echo "auto run in boot in /root/boot_run.sh"
endef
else
define LS2_SYS_CONFIG_TOOL_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS
echo "install auto boot Qt version sofeware service" && cd $(TOPDIR)/package/LS2_SYS_CONFIG_TOOL/ && cp LS2_SYS_CONFIG_TOOL.service $(TARGET_DIR)/usr/lib/systemd/system/ && cd $(TARGET_DIR)/usr/lib/systemd/system/ && mkdir -p multi-user.target.wants && cd $(TARGET_DIR)/usr/lib/systemd/system/multi-user.target.wants && ln -s -f ../LS2_SYS_CONFIG_TOOL.service LS2_SYS_CONFIG_TOOL.service
endef
endif
else
define LS2_SYS_CONFIG_TOOL_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS
echo "nothing to do"
endef
endif
define LS2_SYS_CONFIG_TOOL_BUILD_CMDS
echo "first build cmd version software"
cd $(@D)/cmd_version && $(MAKE) clean && $(TARGET_MAKE_ENV) $(MAKE) CC=$(TARGET_CC) BUILD_TYPE=3 && cp sys_config_tool update_uboot
cd $(@D)/cmd_version && $(MAKE) clean && $(TARGET_MAKE_ENV) $(MAKE) CC=$(TARGET_CC) BUILD_TYPE=2 && cp sys_config_tool update_system
cd $(@D)/cmd_version && $(MAKE) clean && $(TARGET_MAKE_ENV) $(MAKE) CC=$(TARGET_CC)
cd $(@D)/cmd_version && cp update_uboot update_system sys_config_tool $(@D)
echo "second build qt version software"
$(LS2_SYS_CONFIG_TOOL_BUILD_QT_VER_CMDS)
endef
define LS2_SYS_CONFIG_TOOL_INSTALL_STAGING_CMDS
echo "nothing to do"
endef
define LS2_SYS_CONFIG_TOOL_INSTALL_TARGET_CMDS
echo "install cmd version sofeware"
cd $(@D) && ./deploy_budilroot.sh $(LS2_SYS_CONFIG_TOOL_DEPLOY_WAY) $(TARGET_DIR)
$(LS2_SYS_CONFIG_TOOL_INSTALL_QT_VER_CMDS)
$(LS2_SYS_CONFIG_TOOL_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS)
endef
$(eval $(generic-package))
+27
View File
@@ -0,0 +1,27 @@
config BR2_PACKAGE_LS3_SYSTEM_TOOL
bool "ls3 system tool loongson"
help
this is a sofeware or sofeware set work loongson gd board
help user to test their's board
if you can't build it because you not build in loongson gd net
git source unsee in eth
you can contact oujintao@loongson.cn for help
config BR2_PACKAGE_LS3_SYSTEM_TOOL_QT
bool "build Qt version"
depends on BR2_PACKAGE_LS3_SYSTEM_TOOL
depends on BR2_PACKAGE_QT5
depends on BR2_PACKAGE_QT5BASE
help
if your system contain Qt
it will build a Qt version test case for you
config BR2_PACKAGE_LS3_SYSTEM_TOOL_QT_AUTO_START
bool "Qt version auto run after boot"
depends on BR2_PACKAGE_LS3_SYSTEM_TOOL_QT
depends on BR2_INIT_SYSTEMD || (BR2_INIT_BUSYBOX && BR2_PACKAGE_BOOT_RUN)
default n
help
if your system contain Qt and select build this software Qt version
it will set a service which run after boot system to let software exec
@@ -0,0 +1,99 @@
################################################################################
#
# ls3_system_tool
#
################################################################################
LS3_SYSTEM_TOOL_VERSION = origin/master
LS3_SYSTEM_TOOL_SITE = http://192.168.1.5/ls3_system_tool
LS3_SYSTEM_TOOL_SITE_METHOD = git
LS3_SYSTEM_TOOL_GIT_SUBMODULES = YES
LS3_SYSTEM_TOOL_CFLAGS = $(TARGET_CFLAGS)
ifeq ($(BR2_PACKAGE_LS3_SYSTEM_TOOL_QT),y)
LS3_SYSTEM_TOOL_DEPENDENCIES = qt5base
endif
#define LS3_SYSTEM_TOOL_EXTRACT_CMDS
#endef
#$(TARGET_MAKE_ENV) $(MAKE) CC=$(TARGET_CC) AR=$(TARGET_AR) -C $(@D)
define LS3_SYSTEM_TOOL_BUILD_SINGLE_TEST_CASE
cd $(@D)/test_case_single && ./build_single_test.sh $(TARGET_CC) $(TARGET_CXX)
endef
ifeq ($(BR2_PACKAGE_LS3_SYSTEM_TOOL_QT),y)
define LS3_SYSTEM_TOOL_BUILD_QT_VER_CMDS
mkdir -p $(@D)/Qtver/build && cd $(@D)/Qtver/build && $(HOST_DIR)/bin/qmake ../ls_system_tool/ls_system_tool.pro && $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/Qtver/build
endef
define LS3_SYSTEM_TOOL_INSTALL_QT_VER_CMDS
echo "install Qt version sofeware" && cd $(@D)/Qtver/build/ && cp ls_system_tool $(TARGET_DIR)/usr/bin/ls_system_tool_qt
endef
else
define LS3_SYSTEM_TOOL_BUILD_QT_VER_CMDS
echo "not build Qt version"
endef
define LS3_SYSTEM_TOOL_INSTALL_QT_VER_CMDS
echo "not install Qt version"
endef
endif
define LS3_SYSTEM_TOOL_INSTALL_SINGLE_TEST_CASE
cd $(TARGET_DIR)/ && mkdir -p ./root/loongson_test_case && cd $(@D)/test_case_single/out/loongson_test_case && cp -r * $(TARGET_DIR)/root/loongson_test_case/
endef
ifeq ($(BR2_PACKAGE_LS3_SYSTEM_TOOL_QT_AUTO_START),y)
ifeq ($(BR2_PACKAGE_BOOT_RUN),y)
define LS3_SYSTEM_TOOL_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS
echo "auto run in boot in /root/boot_run.sh"
endef
else
define LS3_SYSTEM_TOOL_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS
echo "install auto boot Qt version sofeware service" && cd $(TOPDIR)/package/ls3_system_tool/ && cp ls3_system_tool.service $(TARGET_DIR)/usr/lib/systemd/system/ && cd $(TARGET_DIR)/usr/lib/systemd/system/ && mkdir -p multi-user.target.wants && cd $(TARGET_DIR)/usr/lib/systemd/system/multi-user.target.wants && ln -s -f ../ls3_system_tool.service ls3_system_tool.service
endef
endif
else
define LS3_SYSTEM_TOOL_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS
echo "nothing to do"
endef
endif
# echo "first cmake all single test case"
# cd $(@D) && mkdir -p build && cd ./build && cmake -D CMAKE_C_COMPILER=$(TARGET_CC) ../
# $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/build/
# cd $(@D) && export CC=$(TARGET_CC); export $(TARGET_MAKE_ENV); export ARCH=$(BR2_ARCH); export CROSS_COMPILE=$(BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX)-; ./compile_ob_cp.sh && ./install_single_test.sh
define LS3_SYSTEM_TOOL_BUILD_CMDS
$(LS3_SYSTEM_TOOL_BUILD_SINGLE_TEST_CASE)
echo "build cmd version sofeware"
cd $(@D) && export $(TARGET_MAKE_ENV); export CC=$(TARGET_CC); export ARCH=$(BR2_ARCH); export CROSS_COMPILE=$(BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX)-; ./build.sh rebuild
$(LS3_SYSTEM_TOOL_BUILD_QT_VER_CMDS)
endef
define LS3_SYSTEM_TOOL_INSTALL_STAGING_CMDS
echo "nothing to do"
endef
# echo "install all single test case"
# cd $(TARGET_DIR)/ && mkdir -p ./root/loongson_test_case
# cd $(@D) && cd out/loongson_test_case/ && cp -r * $(TARGET_DIR)/root/loongson_test_case/
# echo "install test-server(all test case test tool)"
# mkdir -p $(TARGET_DIR)/root/loongson-test-server
# cd $(@D)/test-server-project && cp test-server $(TARGET_DIR)/root/loongson-test-server
# #cd $(@D)/test-server-project && cp can_client $(TARGET_DIR)/root/loongson-test-server
define LS3_SYSTEM_TOOL_INSTALL_TARGET_CMDS
$(LS3_SYSTEM_TOOL_INSTALL_SINGLE_TEST_CASE)
cd $(@D) && ./package_output.sh
cd $(@D)/ls_system_tool_install && cp ls_system_tool $(TARGET_DIR)/usr/bin/
mkdir -p $(TARGET_DIR)/opt/ls_system_config
cd $(@D)/ls_system_tool_install && cp -a shell $(TARGET_DIR)/opt/ls_system_config/
$(LS3_SYSTEM_TOOL_INSTALL_QT_VER_CMDS)
$(LS3_SYSTEM_TOOL_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS)
endef
$(eval $(generic-package))
@@ -0,0 +1,13 @@
[Unit]
Description=ls3_system_tool(ls_system_tool_qt) Qt version exec
After=getty@.service
[Service]
Type=oneshot
ExecStart=sleep 5.5
ExecStart=ls_system_tool_qt
TimeoutSec=0
RemainAfterExit=no
[Install]
WantedBy=multi-user.target
+48
View File
@@ -0,0 +1,48 @@
config BR2_PACKAGE_LS_DEFAULT_ETH_CONFIG
bool "loongson default config eth dev"
depends on BR2_PACKAGE_NETWORK_MANAGER || BR2_PACKAGE_IFUPDOWN_SCRIPTS
default n
help
if want to set deafult eth dev ip
can select this option
and custom BR2_PACKAGE_LS_DEFAULT_ETH_NAME and BR2_PACKAGE_LS_DEFAULT_ETH_IP value
if BR2_PACKAGE_LS_DEFAULT_ETH_CONFIG
config BR2_PACKAGE_LS_DEFAULT_ETH_NAME
string "eth dev name list"
depends on BR2_PACKAGE_LS_DEFAULT_ETH_CONFIG
default "eth0"
help
this work by BR2_PACKAGE_LS_DEFAULT_ETH_IP
just set up board default eth dev ip after system boot
e.g.
default value
will let board eth0 dev ip set to be 192.168.10 after boot
if use NetworkManger to set
you can use nmtui to change this defconfig
if use Network (ifupdown scripts package)
you can change /etc/network/interfaces file
if you want to set two or more dev ip
you can set this value like
eth0 eht1
config BR2_PACKAGE_LS_DEFAULT_ETH_IP
string "eth dev ip list"
depends on BR2_PACKAGE_LS_DEFAULT_ETH_CONFIG
default "192.168.1.10"
help
this work by BR2_PACKAGE_LS_DEFAULT_ETH_NAME
just set up board default eth dev ip after system boot
e.g.
default value
will let board eth0 dev ip set to be 192.168.10 after boot
if use NetworkManger to set
you can use nmtui to change this defconfig
if use Network (ifupdown scripts package)
you can change /etc/network/interfaces file
if you want to set two or more dev ip
you can set this value like
192.168.1.10 192.168.2.11
endif
@@ -0,0 +1,62 @@
################################################################################
#
# LS_DEFAULT_ETH_CONFIG
#
################################################################################
LS_DEFAULT_ETH_CONFIG_SITE = $(TOPDIR)/package/ls_default_eth_config/ls_default_eth_config.tar.gz
LS_DEFAULT_ETH_CONFIG_SITE_METHOD = file
define LS_DEFAULT_ETH_CONFIG_EXTRACT_CMDS
echo $(LS_DEFAULT_ETH_CONFIG_SITE)
tar -zxf $(LS_DEFAULT_ETH_CONFIG_SITE) -C $(@D)/
endef
ifeq ($(BR2_PACKAGE_IFUPDOWN_SCRIPTS),y)
BOOT_RUN_DEPENDENCIES = ifupdown-scripts
define BUILD_LS_DEFAULT_ETH_CONFIG_GEN
echo "generate new interface";
cd $(@D) && ./gen_interfaces.sh $(BR2_PACKAGE_LS_DEFAULT_ETH_NAME) $(BR2_PACKAGE_LS_DEFAULT_ETH_IP)
endef
define INSTALL_LS_DEFAULT_ETH_CONFIG_GEN
echo "install interface"
cd $(@D) && cp interfaces $(TARGET_DIR)/etc/network/
endef
endif
ifeq ($(BR2_PACKAGE_NETWORK_MANAGER),y)
BOOT_RUN_DEPENDENCIES = systemd network-manager
define BUILD_LS_DEFAULT_ETH_CONFIG_GEN
echo "generate new keep-nmcli.sh"
cd $(@D) && ./gen-keep-nmcli.sh $(BR2_PACKAGE_LS_DEFAULT_ETH_NAME) $(BR2_PACKAGE_LS_DEFAULT_ETH_IP)
endef
define INSTALL_LS_DEFAULT_ETH_CONFIG_GEN
echo "install keep-nmcli.sh and keep-nmcli.service"
mkdir -p $(TARGET_DIR)/usr/local
cd $(@D) && cp keep-nmcli.sh $(TARGET_DIR)/usr/local
cd $(@D) && cp keep-nmcli.service $(TARGET_DIR)/usr/lib/systemd/system/
cd $(TARGET_DIR)/usr/lib/systemd/system/multi-user.target.wants && ln -sf ../keep-nmcli.service keep-nmcli.service
endef
endif
define LS_DEFAULT_ETH_CONFIG_BUILD_CMDS
$(BUILD_LS_DEFAULT_ETH_CONFIG_GEN)
endef
define LS_DEFAULT_ETH_CONFIG_INSTALL_STAGING_CMDS
echo "nothing to do"
endef
define LS_DEFAULT_ETH_CONFIG_INSTALL_TARGET_CMDS
$(INSTALL_LS_DEFAULT_ETH_CONFIG_GEN)
endef
$(eval $(generic-package))
+9
View File
@@ -0,0 +1,9 @@
config BR2_PACKAGE_MDIO
bool "mdio software"
default y
help
this selection will generate mdio sofeware to /usr/bin
if selected
this sofeware ori code just form net
if found what other package can generate mdio
you can not select this
+22
View File
@@ -0,0 +1,22 @@
################################################################################
#
# mdio
#
################################################################################
MDIO_SITE = $(TOPDIR)/dl/mdio/mdio.tar.gz
MDIO_SITE_METHOD = file
define MDIO_EXTRACT_CMDS
tar -zxf $(MDIO_SITE) -C $(@D)
endef
define MDIO_BUILD_CMDS
cd $(@D) && $(TARGET_CC) mdio.c -o mdio
endef
define MDIO_INSTALL_TARGET_CMDS
cd $(@D) && cp mdio $(TARGET_DIR)/usr/bin
endef
$(eval $(generic-package))
+7
View File
@@ -0,0 +1,7 @@
config BR2_PACKAGE_MP4_SAMPLE
bool "sample mp4 video"
depends on BR2_PACKAGE_MPV
default y
help
this selection will copy sample mp4 video to /root/mp4_sample
+23
View File
@@ -0,0 +1,23 @@
################################################################################
#
# mp4_sample
#
################################################################################
MP4_SAMPLE_SITE = $(TOPDIR)/package/mp4_sample/mp4_sample_video.tar.gz
MP4_SAMPLE_SITE_METHOD = file
define MP4_SAMPLE_EXTRACT_CMDS
tar -zxf $(MP4_SAMPLE_SITE) -C $(@D)
endef
define MP4_SAMPLE_BUILD_CMDS
mkdir -p $(TARGET_DIR)/root/mp4_sample_video
endef
define MP4_SAMPLE_INSTALL_TARGET_CMDS
cd $(@D) && cp ./*.mp4 $(TARGET_DIR)/root/mp4_sample_video -a
endef
$(eval $(generic-package))
Binary file not shown.
File diff suppressed because one or more lines are too long
+3 -1
View File
@@ -14,7 +14,7 @@ MPV_LICENSE_FILES = LICENSE.GPL
MPV_CPE_ID_VENDOR = mpv
MPV_INSTALL_STAGING = YES
MPV_NEEDS_EXTERNAL_WAF = YES
# MPV_NEEDS_EXTERNAL_WAF = YES
# Some of these options need testing and/or tweaks
MPV_CONF_OPTS = \
@@ -227,4 +227,6 @@ ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
MPV_CONF_ENV += LDFLAGS="$(TARGET_LDFLAGS) -latomic"
endif
MPV_WAF = ./buildtools/bin/waf-2.0.27
$(eval $(waf-package))
+1 -1
View File
@@ -7,7 +7,7 @@
# When updating the version here, also update utils/scancpan
PERL_VERSION_MAJOR = 38
PERL_VERSION = 5.$(PERL_VERSION_MAJOR).2
PERL_SITE = https://www.cpan.org/src/5.0
PERL_SITE = https://mirrors.tuna.tsinghua.edu.cn/CPAN/src/5.0
PERL_SOURCE = perl-$(PERL_VERSION).tar.xz
PERL_LICENSE = Artistic or GPL-1.0+
PERL_LICENSE_FILES = Artistic Copying README
+1 -1
View File
@@ -88,7 +88,7 @@ $(2)_POST_PATCH_HOOKS += $(2)_GEN_GOMOD
$(2)_DOWNLOAD_POST_PROCESS = go
$(2)_DL_ENV += \
$$(HOST_GO_COMMON_ENV) \
GOPROXY=direct \
GOPROXY=https://goproxy.io \
$$($(2)_GO_ENV)
# Because we append vendored info, we can't rely on the values being empty
@@ -0,0 +1,13 @@
diff -Nprua procps-ng-4.0.4-ori/src/watch.c procps-ng-4.0.4/src/watch.c
--- procps-ng-4.0.4-ori/src/watch.c 2023-08-15 19:17:05.485773546 +0800
+++ procps-ng-4.0.4/src/watch.c 2024-09-26 16:47:03.805470246 +0800
@@ -53,7 +53,8 @@
# define _XOPEN_SOURCE_EXTENDED 1
# include <wchar.h>
# include <wctype.h>
-# include <ncursesw/ncurses.h>
+//# include <ncursesw/ncurses.h>
+# include <ncurses.h>
#else
# include <ncurses.h>
#endif /* WITH_WATCH8BIT */
+39
View File
@@ -0,0 +1,39 @@
diff -Nprua psplash-ori/psplash.c psplash/psplash.c
--- psplash-ori/psplash.c 2021-10-29 20:44:47.000000000 +0800
+++ psplash/psplash.c 2024-10-14 17:07:53.296024120 +0800
@@ -292,6 +292,7 @@ main (int argc, char** argv)
goto fb_fail;
}
+#if 0
#ifdef HAVE_SYSTEMD
sd_notify(0, "READY=1");
#endif
@@ -314,6 +315,7 @@ main (int argc, char** argv)
POKY_IMG_BYTES_PER_PIXEL,
POKY_IMG_ROWSTRIDE,
POKY_IMG_RLE_PIXEL_DATA);
+#endif
#ifdef PSPLASH_SHOW_PROGRESS_BAR
/* Draw progress bar border */
diff -Nprua psplash-ori/psplash-colors.h psplash/psplash-colors.h
--- psplash-ori/psplash-colors.h 2021-10-29 20:44:47.000000000 +0800
+++ psplash/psplash-colors.h 2024-10-14 17:08:58.825746852 +0800
@@ -12,7 +12,7 @@
#define _HAVE_PSPLASH_COLORS_H
/* This is the overall background color */
-#define PSPLASH_BACKGROUND_COLOR 0xec,0xec,0xe1
+#define PSPLASH_BACKGROUND_COLOR 0x00,0x00,0x00
/* This is the color of any text output */
#define PSPLASH_TEXT_COLOR 0x6d,0x6d,0x70
@@ -21,6 +21,6 @@
#define PSPLASH_BAR_COLOR 0x6d,0x6d,0x70
/* This is the color of the progress bar background */
-#define PSPLASH_BAR_BACKGROUND_COLOR 0xec,0xec,0xe1
+#define PSPLASH_BAR_BACKGROUND_COLOR 0x00,0x00,0x00
#endif
+5
View File
@@ -0,0 +1,5 @@
config BR2_PACKAGE_PYTHON_RPI_GPIO_LS
bool "python-RPi.GPIO(LS Ver)"
help
A module to control Raspberry Pi GPIO channels
Change by LSGD to support multi board
@@ -0,0 +1,12 @@
################################################################################
#
# python-RPi-GPIO-ls
#
################################################################################
PYTHON_RPI_GPIO_LS_VERSION = origin/ls-dev-0.7.0
PYTHON_RPI_GPIO_LS_SITE = http://192.168.1.5/RPi-GPIO-LS
PYTHON_RPI_GPIO_LS_SITE_METHOD = git
PYTHON_RPI_GPIO_LS_SETUP_TYPE = setuptools
$(eval $(python-package))
@@ -0,0 +1,7 @@
config BR2_PACKAGE_PYTHON_GEVENT_WEBSOCKET
bool "python-gevent-websocket"
select BR2_PACKAGE_PYTHON_GEVENT
help
Python binding to the gevent-websocket
https://pypi.org/project/gevent-websocket/
@@ -0,0 +1 @@
sha256 7eaef32968290c9121f7c35b973e2cc302ffb076d018c9068d2f5ca8b2d85fb0 gevent-websocket-0.10.1.tar.gz
@@ -0,0 +1,16 @@
################################################################################
#
# python-gevent-websocket
#
################################################################################
PYTHON_GEVENT_WEBSOCKET_VERSION = 0.10.1
PYTHON_GEVENT_WEBSOCKET_SOURCE = gevent-websocket-$(PYTHON_GEVENT_WEBSOCKET_VERSION).tar.gz
PYTHON_GEVENT_WEBSOCKET_SITE = https://files.pythonhosted.org/packages/98/d2/6fa19239ff1ab072af40ebf339acd91fb97f34617c2ee625b8e34bf42393
PYTHON_GEVENT_WEBSOCKET_LICENSE = Apache-2.0
PYTHON_GEVENT_WEBSOCKET_LICENSE_FILES = LICENSE
PYTHON_GEVENT_WEBSOCKET_SETUP_TYPE = setuptools
PYTHON_GEVENT_WEBSOCKET_DEPENDENCIES = python-gevent
PYTHON_GEVENT_WEBSOCKET_ENV = SODIUM_INSTALL=system
$(eval $(python-package))
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,24 @@
diff -Nprua gevent-24.2.1/_setupares.py gevent-24.2.1-LA/_setupares.py
--- gevent-24.2.1/_setupares.py 2024-04-16 12:13:41.045173000 +0800
+++ gevent-24.2.1-LA/_setupares.py 2024-04-16 12:14:22.773153201 +0800
@@ -42,7 +42,7 @@ cflags = ('CFLAGS="%s"' % (cflags,)) if
ares_configure_command = ' '.join([
"(cd ", quoted_dep_abspath('c-ares'),
" && if [ -r include/ares_build.h ]; then cp include/ares_build.h include/ares_build.h.orig; fi ",
- " && sh ./configure --disable-dependency-tracking -C " + cflags,
+ " && sh ./configure --host=loongarch64 --disable-dependency-tracking -C " + cflags,
" && cp src/lib/ares_config.h include/ares_build.h \"$OLDPWD\" ",
" && cat include/ares_build.h ",
" && if [ -r include/ares_build.h.orig ]; then mv include/ares_build.h.orig include/ares_build.h; fi)",
diff -Nprua gevent-24.2.1/_setuplibev.py gevent-24.2.1-LA/_setuplibev.py
--- gevent-24.2.1/_setuplibev.py 2024-04-16 12:14:02.117162000 +0800
+++ gevent-24.2.1-LA/_setuplibev.py 2024-04-16 12:14:19.593154549 +0800
@@ -28,7 +28,7 @@ LIBEV_EMBED = should_embed('libev')
# Configure libev in place
libev_configure_command = ' '.join([
"(cd ", quoted_dep_abspath('libev'),
- " && sh ./configure -C > configure-output.txt",
+ " && sh ./configure --host=loongarch64 -C > configure-output.txt",
")",
])
+7
View File
@@ -0,0 +1,7 @@
config BR2_PACKAGE_PYTHON_GEVENT
bool "python-gevent"
select BR2_PACKAGE_PYTHON_GREENLET
help
Python binding to the gevent
https://pypi.org/project/gevent/
+2
View File
@@ -0,0 +1,2 @@
sha256 a23c2abf08e851c988723f6a2996d495f513a2c0dc70f9956af03af8debdb5d1 gevent-20.6.2.tar.gz
sha256 432fc76f680acf7cf188c2ee0f5d3ab73b63c1f03114c7cd8a34cebbe5aa2056 gevent-24.2.1.tar.gz
+16
View File
@@ -0,0 +1,16 @@
################################################################################
#
# python-gevent
#
################################################################################
PYTHON_GEVENT_VERSION = 24.2.1
PYTHON_GEVENT_SOURCE = gevent-$(PYTHON_GEVENT_VERSION).tar.gz
PYTHON_GEVENT_SITE = https://files.pythonhosted.org/packages/27/24/a3a7b713acfcf1177207f49ec25c665123f8972f42bee641bcc9f32961f4
PYTHON_GEVENT_LICENSE = Apache-2.0
PYTHON_GEVENT_LICENSE_FILES = LICENSE
PYTHON_GEVENT_SETUP_TYPE = setuptools
PYTHON_GEVENT_DEPENDENCIES = python-greenlet
PYTHON_GEVENT_ENV = SODIUM_INSTALL=system
$(eval $(python-package))
+1
View File
@@ -8,6 +8,7 @@ config BR2_PACKAGE_PYTHON_GREENLET_ARCH_SUPPORTS
default y if BR2_riscv
default y if BR2_sparc || BR2_sparc64
default y if BR2_i386 || BR2_x86_64
default y if BR2_loongarch
config BR2_PACKAGE_PYTHON_GREENLET
bool "python-greenlet"
@@ -0,0 +1,6 @@
config BR2_PACKAGE_PYTHON_LS_RPI_GPIO_DEMO
bool "loongson python demo about RPi.GPIO (LS version)"
default y
help
demo for RPi.GPIO which support by LSGD
@@ -0,0 +1,17 @@
################################################################################
#
# python-ls-rpi-gpio-demo
#
################################################################################
PYTHON_LS_RPI_GPIO_DEMO_DEPENDENCIES = python-RPi-GPIO-LS
define PYTHON_LS_RPI_GPIO_DEMO_INSTALL_TARGET_CMDS
echo "install python demo"
mkdir -p $(TARGET_DIR)/usr/local/python_demo
cp $(@D)/../python-RPi-GPIO-LS*/python-demo/* $(TARGET_DIR)/usr/local/python_demo/ -a -d
cd $(TARGET_DIR)/root/ && ln -sf /usr/local/python_demo python_demo
endef
$(eval $(generic-package))
+12
View File
@@ -0,0 +1,12 @@
config BR2_PACKAGE_PYTHON_LUMACORE
bool "python-luma.core"
select BR2_PACKAGE_PYTHON_PILLOW # runtime
select BR2_PACKAGE_PYTHON_SMBUS2 # runtime
select BR2_PACKAGE_PYTHON_PYFTDI # runtime
select BR2_PACKAGE_PYTHON_CBOR2 # runtime
select BR2_PACKAGE_PYTHON_RPI_GPIO_LS # runtime
select BR2_PACKAGE_PYTHON_SPIDEV # runtime
help
A component library to support SBC display drivers
https://pypi.org/project/luma.core
@@ -0,0 +1,12 @@
################################################################################
#
# python-lumacore
#
################################################################################
PYTHON_LUMACORE_VERSION = 2.4.2
PYTHON_LUMACORE_SOURCE = luma.core-$(PYTHON_LUMACORE_VERSION).tar.gz
PYTHON_LUMACORE_SITE = https://files.pythonhosted.org/packages/64/fe/026b50adfedf0d6bef583f8b005ad7e75b6501c973fad77a871d020fb63f
PYTHON_LUMACORE_SETUP_TYPE = setuptools
$(eval $(python-package))
+9
View File
@@ -0,0 +1,9 @@
config BR2_PACKAGE_PYTHON_LUMAOLED
bool "python-luma.oled"
select BR2_PACKAGE_PYTHON_LUMACORE # runtime
help
A small library to drive an OLED device
with either SSD1306, SSD1309, SSD1322, SSD1325, SSD1327,
SSD1331, SSD1351, SSD1362, SH1106, SH1107 or WS0010 chipset
https://pypi.org/project/luma.oled
@@ -0,0 +1,12 @@
################################################################################
#
# python-lumaoled
#
################################################################################
PYTHON_LUMAOLED_VERSION = 3.13.0
PYTHON_LUMAOLED_SOURCE = luma.oled-$(PYTHON_LUMAOLED_VERSION).tar.gz
PYTHON_LUMAOLED_SITE = https://files.pythonhosted.org/packages/bd/fe/2eb49e764f14ac729ee9d5b42095094db9dc1cc6f8d653c6c1e5d7d869e6
PYTHON_LUMAOLED_SETUP_TYPE = setuptools
$(eval $(python-package))
@@ -0,0 +1,41 @@
diff -Nprua PyAudio-0.2.14/setup.py PyAudio-0.2.14-LA/setup.py
--- PyAudio-0.2.14/setup.py 2023-11-05 02:08:50.000000000 +0800
+++ PyAudio-0.2.14-LA/setup.py 2024-04-16 10:08:08.332071070 +0800
@@ -72,14 +72,14 @@ def setup_extension():
# TODO: let users pass in location of portaudio library on command line.
defines += [('MACOS', '1')]
- include_dirs += [
- '/usr/local/include', '/usr/include', '/opt/homebrew/include'
- ]
- external_libraries_path += [
- path
- for path in ('/usr/local/lib', '/usr/lib', '/opt/homebrew/lib')
- if os.path.exists(path)
- ]
+ # include_dirs += [
+ # '/usr/local/include', '/usr/include', '/opt/homebrew/include'
+ # ]
+ # external_libraries_path += [
+ # path
+ # for path in ('/usr/local/lib', '/usr/lib', '/opt/homebrew/lib')
+ # if os.path.exists(path)
+ # ]
if MAC_SYSROOT_PATH:
extra_compile_args += ["-isysroot", MAC_SYSROOT_PATH]
@@ -111,11 +111,11 @@ def setup_extension():
# the standard portaudio cmake settings. For details, see:
# https://devblogs.microsoft.com/cppblog/vcpkg-updates-static-linking-is-now-available/
extra_compile_args += ["/MT"]
- else:
+ # else:
# GNU/Linux and other posix-like OSes will dynamically link to
# portaudio, installed by the package manager.
- include_dirs += ['/usr/local/include', '/usr/include']
- external_libraries_path += ['/usr/local/lib', '/usr/lib']
+ # include_dirs += ['/usr/local/include', '/usr/include']
+ # external_libraries_path += ['/usr/local/lib', '/usr/lib']
return Extension(
'pyaudio._portaudio',
+7
View File
@@ -0,0 +1,7 @@
config BR2_PACKAGE_PYTHON_PYAUDIO
bool "python-pyaudio"
select BR2_PACKAGE_PORTAUDIO
help
Python binding to the pyaudio
https://pypi.org/project/PyAudio/
@@ -0,0 +1 @@
sha256 78dfff3879b4994d1f4fc6485646a57755c6ee3c19647a491f790a0895bd2f87 PyAudio-0.2.14.tar.gz
+16
View File
@@ -0,0 +1,16 @@
################################################################################
#
# python-pyaudio
#
################################################################################
PYTHON_PYAUDIO_VERSION = 0.2.14
PYTHON_PYAUDIO_SOURCE = PyAudio-$(PYTHON_PYAUDIO_VERSION).tar.gz
PYTHON_PYAUDIO_SITE = https://files.pythonhosted.org/packages/26/1d/8878c7752febb0f6716a7e1a52cb92ac98871c5aa522cba181878091607c
PYTHON_PYAUDIO_LICENSE = Apache-2.0
PYTHON_PYAUDIO_LICENSE_FILES = LICENSE
PYTHON_PYAUDIO_SETUP_TYPE = setuptools
PYTHON_PYAUDIO_DEPENDENCIES = portaudio
PYTHON_PYAUDIO_ENV = SODIUM_INSTALL=system
$(eval $(python-package))
+6
View File
@@ -0,0 +1,6 @@
config BR2_PACKAGE_PYTHON_PYFTDI
bool "python-pyftdi"
help
FTDI device driver (pure Python)
https://pypi.org/project/pyftdi
+12
View File
@@ -0,0 +1,12 @@
################################################################################
#
# python-pyftdi
#
################################################################################
PYTHON_PYFTDI_VERSION = 0.55.4
PYTHON_PYFTDI_SOURCE = pyftdi-$(PYTHON_PYFTDI_VERSION).tar.gz
PYTHON_PYFTDI_SITE = https://files.pythonhosted.org/packages/8f/b4/8578b8e4c1e69faa8297cb1e1fd0c86de03bb7eeb3e7cb63157e1e72abfb
PYTHON_PYFTDI_SETUP_TYPE = setuptools
$(eval $(python-package))
+1
View File
@@ -33,6 +33,7 @@ define PYTHON_SIP_CONFIGURE_CMDS
--incdir $(STAGING_DIR)/usr/include/python$(PYTHON3_VERSION_MAJOR) \
--sipdir $(TARGET_DIR)/usr/share/sip \
--sysroot $(STAGING_DIR)/usr \
--sip-module=PyQt5.sip \
--no-stubs \
--use-qmake && \
$(HOST_DIR)/bin/qmake)
+6
View File
@@ -0,0 +1,6 @@
config BR2_PACKAGE_PYTHON_SMBUS2
bool "python-smbus2"
help
smbus2 is a drop-in replacement for smbus-cffi/smbus-python in pure Python
https://pypi.org/project/smbus2
+12
View File
@@ -0,0 +1,12 @@
################################################################################
#
# python-smbus2
#
################################################################################
PYTHON_SMBUS2_VERSION = 0.4.3
PYTHON_SMBUS2_SOURCE = smbus2-$(PYTHON_SMBUS2_VERSION).tar.gz
PYTHON_SMBUS2_SITE = https://files.pythonhosted.org/packages/98/17/9663936e52a348b3ad1c85e6ca6071d2abf00a5f64f2df50bec8dcca6e16
PYTHON_SMBUS2_SETUP_TYPE = setuptools
$(eval $(python-package))
@@ -0,0 +1,69 @@
diff --git a/src/w1thermsensor/core.py b/src/w1thermsensor/core.py
index 0e155a9..4e99966 100644
--- a/src/w1thermsensor/core.py
+++ b/src/w1thermsensor/core.py
@@ -252,12 +252,18 @@ class W1ThermSensor:
self.name, self.id)
)
- if (
- len(data) < 1
- or data[0].strip()[-3:] != "YES"
- or "00 00 00 00 00 00 00 00 00" in data[0]
- ):
- raise SensorNotReadyError(self)
+ # raise SensorNotReadyError(self)
+ while True:
+ if (
+ len(data) < 1
+ or data[0].strip()[-3:] != "YES"
+ or "00 00 00 00 00 00 00 00 00" in data[0]
+ ):
+ time.sleep(0.2)
+ with self.sensorpath.open("r") as f:
+ data = f.readlines()
+ else:
+ break
return data
@@ -274,16 +280,19 @@ class W1ThermSensor:
:raises SensorNotReadyError: if the sensor is not ready yet
:raises ResetValueError: if the sensor has still the initial value and no measurement
"""
- raw_temperature_line = self.get_raw_sensor_strings()[1]
- return evaluate_temperature(
- raw_temperature_line,
- self.RAW_VALUE_TO_DEGREE_CELSIUS_FACTOR,
- unit,
- self.type,
- self.id,
- self.offset,
- self.SENSOR_RESET_VALUE,
- )
+ res = -1000.0
+ while res == -1000.0:
+ raw_temperature_line = self.get_raw_sensor_strings()[1]
+ res = evaluate_temperature(
+ raw_temperature_line,
+ self.RAW_VALUE_TO_DEGREE_CELSIUS_FACTOR,
+ unit,
+ self.type,
+ self.id,
+ self.offset,
+ self.SENSOR_RESET_VALUE,
+ )
+ return res
def get_corrected_temperature(self, unit: Unit = Unit.DEGREES_C) -> float:
"""Returns the temperature in the specified unit, corrected based on the calibration data
@@ -474,7 +483,8 @@ def evaluate_temperature(
# check if the sensor value is the reset value
if value == sensor_reset_value:
- raise ResetValueError(sensor_id)
+ # raise ResetValueError(sensor_id)
+ return -1000.0
else:
# Fallback to precalculated value for other sensor types
value = get_raw_temperature(raw_temperature_line)
+8
View File
@@ -0,0 +1,8 @@
config BR2_PACKAGE_PYTHON_W1THERMSENSOR
bool "python-w1thermsensor"
help
A Python package and CLI tool to work with w1 temperature sensors
like DS1822, DS18S20 & DS18B20
on the Raspberry Pi, Beagle Bone and other devices.
https://pypi.org/project/w1thermsensor
@@ -0,0 +1,12 @@
################################################################################
#
# python-w1thermsensor
#
################################################################################
PYTHON_W1THERMSENSOR_VERSION = 2.3.0
PYTHON_W1THERMSENSOR_SOURCE = w1thermsensor-$(PYTHON_W1THERMSENSOR_VERSION).tar.gz
PYTHON_W1THERMSENSOR_SITE = https://files.pythonhosted.org/packages/dd/60/e2dbb207a2b6ed7813aeb976bfb69ef084b3586d5378597e5e5eb225582a
PYTHON_W1THERMSENSOR_SETUP_TYPE = setuptools
$(eval $(python-package))
+1 -1
View File
@@ -7,7 +7,7 @@ config BR2_PACKAGE_QT5_JSCORE_AVAILABLE
bool
default y
# Javascript engine is only available on certain architectures
depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 || BR2_mipsel || BR2_arc
depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 || BR2_mipsel || BR2_arc || BR2_loongarch
# ARM needs BLX, so v5t+
depends on !BR2_ARM_CPU_ARMV4
@@ -0,0 +1,43 @@
diff -Nprua qt5base-ori/src/3rdparty/double-conversion/include/double-conversion/utils.h qt5base/src/3rdparty/double-conversion/include/double-conversion/utils.h
--- qt5base-ori/src/3rdparty/double-conversion/include/double-conversion/utils.h 2024-09-25 17:38:02.494925999 +0800
+++ qt5base/src/3rdparty/double-conversion/include/double-conversion/utils.h 2024-09-25 17:39:11.803854100 +0800
@@ -104,7 +104,7 @@ int main(int argc, char** argv) {
defined(__riscv) || \
defined(__or1k__) || defined(__arc__) || \
defined(__microblaze__) || defined(__XTENSA__) || \
- defined(__EMSCRIPTEN__)
+ defined(__EMSCRIPTEN__) || defined(__loongarch64)
#define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
#elif defined(__mc68000__) || \
defined(__pnacl__) || defined(__native_client__)
diff -Nprua qt5base-ori/src/corelib/global/archdetect.cpp qt5base/src/corelib/global/archdetect.cpp
--- qt5base-ori/src/corelib/global/archdetect.cpp 2024-06-06 15:21:13.000000000 +0800
+++ qt5base/src/corelib/global/archdetect.cpp 2024-09-25 17:39:39.064212275 +0800
@@ -59,6 +59,10 @@
# define ARCH_PROCESSOR "x86_64"
#elif defined(Q_PROCESSOR_IA64)
# define ARCH_PROCESSOR "ia64"
+#elif defined(Q_PROCESSOR_LOONGARCH_64)
+# define ARCH_PROCESSOR "loongarch64"
+#elif defined(Q_PROCESSOR_LOONGARCH)
+# define ARCH_PROCESSOR "loongarch"
#elif defined(Q_PROCESSOR_MIPS_64)
# define ARCH_PROCESSOR "mips64"
#elif defined(Q_PROCESSOR_MIPS)
diff -Nprua qt5base-ori/src/corelib/global/qprocessordetection.h qt5base/src/corelib/global/qprocessordetection.h
--- qt5base-ori/src/corelib/global/qprocessordetection.h 2024-06-06 15:21:13.000000000 +0800
+++ qt5base/src/corelib/global/qprocessordetection.h 2024-09-25 17:39:59.572479353 +0800
@@ -223,6 +223,13 @@
# define Q_PROCESSOR_WORDSIZE 8
// Q_BYTE_ORDER not defined, use endianness auto-detection
+#elif defined(_loongarch) || defined(__loongarch__)
+# define Q_PROCESSOR_LOONGARCH
+# if defined(__loongarch64)
+# define Q_PROCESSOR_LOONGARCH_64
+# define Q_PROCESSOR_WORDSIZE 8
+# endif
+
/*
MIPS family, known revisions: I, II, III, IV, 32, 64
@@ -0,0 +1,147 @@
From 0517a372a25b356e1fe379a4cc1e39f51a06ab57 Mon Sep 17 00:00:00 2001
From: Xiaochuan Mao <maoxiaochuan@loongson.cn>
Date: Tue, 17 Aug 2021 20:33:22 -0700
Subject: [PATCH] mkspec:add loongarch64 support
---
mkspecs/linux-loongarch64-g++/qmake.conf | 25 ++++++
mkspecs/linux-loongarch64-g++/qplatformdefs.h | 95 ++++++++++++++++++++++
2 files changed, 120 insertions(+)
create mode 100644 mkspecs/linux-loongarch64-g++/qmake.conf
create mode 100644 mkspecs/linux-loongarch64-g++/qplatformdefs.h
diff --git a/mkspecs/linux-loongarch64-g++/qmake.conf b/mkspecs/linux-loongarch64-g++/qmake.conf
new file mode 100644
index 00000000..86f95514
--- /dev/null
+++ b/mkspecs/linux-loongarch64-g++/qmake.conf
@@ -0,0 +1,25 @@
+#
+# qmake configuration for linux-g++
+#
+
+MAKEFILE_GENERATOR = UNIX
+CONFIG += incremental
+QMAKE_INCREMENTAL_STYLE = sublib
+
+include(../common/linux.conf)
+include(../common/gcc-base-unix.conf)
+include(../common/g++-unix.conf)
+
+# modifications to g++.conf
+QMAKE_CC = loongarch64-linux-gnu-gcc
+QMAKE_CXX = loongarch64-linux-gnu-g++
+QMAKE_LINK = loongarch64-linux-gnu-g++
+QMAKE_LINK_SHLIB = loongarch64-linux-gnu-g++
+
+# modifications to linux.conf
+QMAKE_AR = loongarch64-linux-gnu-ar cqs
+QMAKE_OBJCOPY = loongarch64-linux-gnu-objcopy
+QMAKE_NM = loongarch64-linux-gnu-nm -P
+QMAKE_STRIP = loongarch64-linux-gnu-strip
+
+load(qt_config)
diff --git a/mkspecs/linux-loongarch64-g++/qplatformdefs.h b/mkspecs/linux-loongarch64-g++/qplatformdefs.h
new file mode 100644
index 00000000..13523f07
--- /dev/null
+++ b/mkspecs/linux-loongarch64-g++/qplatformdefs.h
@@ -0,0 +1,95 @@
+/****************************************************************************
+**
+** Copyright (C) 2016 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the qmake spec of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 3 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL3 included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 3 requirements
+** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 2.0 or (at your option) the GNU General
+** Public license version 3 or any later version approved by the KDE Free
+** Qt Foundation. The licenses are as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-2.0.html and
+** https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QPLATFORMDEFS_H
+#define QPLATFORMDEFS_H
+
+// Get Qt defines/settings
+
+#include "qglobal.h"
+
+// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
+
+// 1) need to reset default environment if _BSD_SOURCE is defined
+// 2) need to specify POSIX thread interfaces explicitly in glibc 2.0
+// 3) it seems older glibc need this to include the X/Open stuff
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+
+#include <unistd.h>
+
+
+// We are hot - unistd.h should have turned on the specific APIs we requested
+
+#include <features.h>
+#include <pthread.h>
+#include <dirent.h>
+#include <fcntl.h>
+#include <grp.h>
+#include <pwd.h>
+#include <signal.h>
+
+#include <sys/types.h>
+#include <sys/ioctl.h>
+#include <sys/ipc.h>
+#include <sys/time.h>
+#include <sys/shm.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/wait.h>
+#include <netinet/in.h>
+
+#define QT_USE_XOPEN_LFS_EXTENSIONS
+#include "../common/posix/qplatformdefs.h"
+
+#undef QT_SOCKLEN_T
+
+#if defined(__GLIBC__) && (__GLIBC__ < 2)
+#define QT_SOCKLEN_T int
+#else
+#define QT_SOCKLEN_T socklen_t
+#endif
+
+#if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500)
+#define QT_SNPRINTF ::snprintf
+#define QT_VSNPRINTF ::vsnprintf
+#endif
+
+#endif // QPLATFORMDEFS_H
--
2.17.1
@@ -0,0 +1,23 @@
diff -Nprua qtscript-ori/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h qtscript/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h
--- qtscript-ori/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h 2023-11-27 16:16:24.000000000 +0800
+++ qtscript/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h 2024-09-26 10:06:56.632648778 +0800
@@ -490,7 +490,8 @@ namespace JSC {
u.asBits.tag = CellTag;
else
u.asBits.tag = EmptyValueTag;
- u.asBits.payload = reinterpret_cast<int32_t>(ptr);
+ // u.asBits.payload = reinterpret_cast<int32_t>(ptr);
+ u.asBits.payload = reinterpret_cast<int64_t>(ptr);
#if ENABLE(JSC_ZOMBIES)
ASSERT(!isZombie());
#endif
@@ -502,7 +503,8 @@ namespace JSC {
u.asBits.tag = CellTag;
else
u.asBits.tag = EmptyValueTag;
- u.asBits.payload = reinterpret_cast<int32_t>(const_cast<JSCell*>(ptr));
+ // u.asBits.payload = reinterpret_cast<int32_t>(const_cast<JSCell*>(ptr));
+ u.asBits.payload = reinterpret_cast<int64_t>(const_cast<JSCell*>(ptr));
#if ENABLE(JSC_ZOMBIES)
ASSERT(!isZombie());
#endif
+20
View File
@@ -0,0 +1,20 @@
config BR2_PACKAGE_QT_MOVIE
bool "qt movie demo"
default y
depends on BR2_PACKAGE_QT5
depends on BR2_PACKAGE_QT5BASE
help
change by LSGD
Qt movie demo
will auto play run path logo.gif
install in /root/logo_player/
name is logo_player
config BR2_PACKAGE_QT_MOVIE_AUTOBOOT
bool "qt movie auto run agter boot"
default y
depends on BR2_PACKAGE_QT_MOVIE
help
auto run logo_player after boot
to show LSGD logo.gif
+13
View File
@@ -0,0 +1,13 @@
[Unit]
Description=driver_testcase Qt version exec
After=getty@.service
[Service]
Type=oneshot
ExecStart=sleep 5.5
ExecStart=cd /root/logo_player && ./logo_player -platform linuxfb
TimeoutSec=0
RemainAfterExit=no
[Install]
WantedBy=multi-user.target
+52
View File
@@ -0,0 +1,52 @@
################################################################################
#
# qt_movie
#
################################################################################
QT_MOVIE_SITE = $(TOPDIR)/package/qt_movie/qt_movie.tar.gz
QT_MOVIE_SITE_METHOD = file
QT_MOVIE_CFLAGS = $(TARGET_CFLAGS)
QT_MOVIE_DEPENDENCIES = qt5base
define QT_MOVIE_EXTRACT_CMDS
echo $(QT_MOVIE_SITE)
tar -zxf $(QT_MOVIE_SITE) -C $(@D)/
endef
ifeq ($(BR2_PACKAGE_QT_MOVIE_AUTOBOOT),y)
ifeq ($(BR2_PACKAGE_BOOT_RUN),y)
define QT_MOVIE_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS
echo "auto run in boot in /root/boot_run.sh"
endef
else
define QT_MOVIE_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS
echo "install auto boot logo_player sofeware service" && cd $(TOPDIR)/package/qt_movie/ && cp logo_player.service $(TARGET_DIR)/usr/lib/systemd/system/ && cd $(TARGET_DIR)/usr/lib/systemd/system/ && mkdir -p multi-user.target.wants && cd $(TARGET_DIR)/usr/lib/systemd/system/multi-user.target.wants && ln -s -f ../logo_player.service logo_player.service
endef
endif
else
define QT_MOVIE_INSTALL_AUTO_EXEC_AFTER_BOOT_CMDS
echo "nothing to do"
endef
endif
#$(TARGET_MAKE_ENV) $(MAKE) CC=$(TARGET_CC) AR=$(TARGET_AR) -C $(@D)
define QT_MOVIE_BUILD_CMDS
cd $(@D) && $(HOST_DIR)/bin/qmake movie.pro && $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
endef
define QT_MOVIE_INSTALL_STAGING_CMDS
echo "nothing to do"
endef
define QT_MOVIE_INSTALL_TARGET_CMDS
mkdir -p $(TARGET_DIR)/root/logo_player/
cd $(@D) && cp movie $(TARGET_DIR)/root/logo_player/logo_player
cd $(@D) && cp logo.gif $(TARGET_DIR)/root/logo_player/
endef
$(eval $(generic-package))
Binary file not shown.
+9
View File
@@ -0,0 +1,9 @@
config BR2_PACKAGE_QT_MUSIC_PLAYER
bool "qt music player"
default y
depends on BR2_PACKAGE_QT5
depends on BR2_PACKAGE_QT5BASE
depends on BR2_PACKAGE_QT5MULTIMEDIA
help
https://gitee.com/Singtren/qt-music-player
@@ -0,0 +1,26 @@
################################################################################
#
# qt_music_player
#
################################################################################
QT_MUSIC_PLAYER_SITE = $(TOPDIR)/package/qt_music_player/qt_music_player.tar.gz
QT_MUSIC_PLAYER_SITE_METHOD = file
QT_MUSIC_PLAYER_CFLAGS = $(TARGET_CFLAGS)
QT_MUSIC_PLAYER_DEPENDENCIES = qt5base
define QT_MUSIC_PLAYER_EXTRACT_CMDS
echo $(QT_MUSIC_PLAYER_SITE)
tar -zxf $(QT_MUSIC_PLAYER_SITE) -C $(@D)/ --strip=1
endef
define QT_MUSIC_PLAYER_BUILD_CMDS
cd $(@D) && $(HOST_DIR)/bin/qmake mplayer.pro && $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
endef
define QT_MUSIC_PLAYER_INSTALL_TARGET_CMDS
cd $(@D) && cp mplayer $(TARGET_DIR)/root/
endef
$(eval $(generic-package))
Binary file not shown.
+9
View File
@@ -0,0 +1,9 @@
config BR2_PACKAGE_QT_USE_TSLIB
bool "Qt version use tslib"
depends on BR2_PACKAGE_QT5
depends on BR2_PACKAGE_QT5BASE
default n
help
if your Qt version need use tslib enable otherwise disable it.
if usb tslib should export QT_QPA_FB_TSLIB=1 so that tslib run better
+11
View File
@@ -0,0 +1,11 @@
config BR2_PACKAGE_QT_VIRTUAL_KEYBOARD_EMB
bool "qt virtual keyboard for emb linux"
default y
depends on BR2_PACKAGE_QT5
depends on BR2_PACKAGE_QT5BASE
depends on BR2_PACKAGE_QT5VIRTUALKEYBOARD
help
for emb linux virtual board lib
libQt5SoftKeyboardd.so
usage:
add qputenv("QT_IM_MODULE",QByteArray("Qt5Input")); to main.cpp
@@ -0,0 +1,28 @@
################################################################################
#
# qt_virtual_keyboard_emb
#
################################################################################
QT_VIRTUAL_KEYBOARD_EMB_VERSION = origin/master
QT_VIRTUAL_KEYBOARD_EMB_SITE = https://gitee.com/yynestt/QVirtualKeyboard
QT_VIRTUAL_KEYBOARD_EMB_SITE_METHOD = git
QT_VIRTUAL_KEYBOARD_EMB_CFLAGS = $(TARGET_CFLAGS)
QT_VIRTUAL_KEYBOARD_EMB_DEPENDENCIES = qt5base qt5virtualkeyboard
#$(TARGET_MAKE_ENV) $(MAKE) CC=$(TARGET_CC) AR=$(TARGET_AR) -C $(@D)
define QT_VIRTUAL_KEYBOARD_EMB_BUILD_CMDS
cd $(@D) && mkdir -p build && cd ./build && $(HOST_DIR)/bin/qmake ../VirtualKeyboard.pro && $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/build
endef
define QT_VIRTUAL_KEYBOARD_EMB_INSTALL_STAGING_CMDS
echo "nothing to do"
endef
define QT_VIRTUAL_KEYBOARD_EMB_INSTALL_TARGET_CMDS
cd $(@D) && cp ./bin/plugins/platforminputcontexts/libQt5SoftKeyboard.so $(TARGET_DIR)/usr/lib/qt/plugins/platforminputcontexts
endef
$(eval $(generic-package))
+9
View File
@@ -0,0 +1,9 @@
config BR2_PACKAGE_QTPERF
bool "qtperf"
default y
depends on BR2_PACKAGE_QT5
depends on BR2_PACKAGE_QT5BASE
help
if your system contain qtperf testcase
it will build qtperf
+32
View File
@@ -0,0 +1,32 @@
################################################################################
#
# qtperf
#
################################################################################
QTPERF_SITE = $(TOPDIR)/package/qtperf/qtperf.tar.gz
QTPERF_SITE_METHOD = file
QTPERF_CFLAGS = $(TARGET_CFLAGS)
QTPERF_DEPENDENCIES = qt5base
define QTPERF_EXTRACT_CMDS
echo $(QTPERF_SITE)
tar -zxf $(QTPERF_SITE) -C $(@D)/
endef
#$(TARGET_MAKE_ENV) $(MAKE) CC=$(TARGET_CC) AR=$(TARGET_AR) -C $(@D)
define QTPERF_BUILD_CMDS
cd $(@D) && $(HOST_DIR)/bin/qmake qtperf.pro && $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
endef
define QTPERF_INSTALL_STAGING_CMDS
echo "nothing to do"
endef
define QTPERF_INSTALL_TARGET_CMDS
cd $(@D) && cp qtperf_qt5 $(TARGET_DIR)/usr/bin/
endef
$(eval $(generic-package))
Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More