Просмотр исходного кода

massive drop of old packages

Furthermore:
- add neatvnc and libaml
Waldemar Brodkorb 3 месяцев назад
Родитель
Сommit
5629273cc1
100 измененных файлов с 1589 добавлено и 2217 удалено
  1. 0 31
      package/SDL_gfx/Makefile
  2. 0 30
      package/SDL_ttf/Makefile
  3. 32 0
      package/aml/Makefile
  4. 0 32
      package/beecrypt/Makefile
  5. 0 11
      package/beecrypt/patches/patch-include_beecrypt_gnu_h
  6. 0 11
      package/beecrypt/patches/patch-ltmain_sh
  7. 0 32
      package/chillispot/Makefile
  8. 0 292
      package/chillispot/files/chilli.conf
  9. 0 1
      package/chillispot/files/chillispot.conffiles
  10. 0 27
      package/chillispot/files/chillispot.init
  11. 0 3
      package/chillispot/files/chillispot.postinst
  12. 0 57
      package/chillispot/patches/patch-src_tun_c
  13. 0 33
      package/deco/Makefile
  14. 0 11
      package/deco/patches/100-tty.c.patch
  15. 0 56
      package/firefox/Makefile
  16. 0 13
      package/firefox/patches/patch-build_moz_configure_flags_configure
  17. 0 37
      package/firefox/patches/patch-servo_components_style_traits_values_rs
  18. 0 10
      package/firefox/patches/patch-servo_ports_geckolib_cbindgen_toml
  19. 0 39
      package/flask-login/Makefile
  20. 0 39
      package/flask/Makefile
  21. 0 37
      package/flask/patches/patch-setup_py
  22. 0 34
      package/gatling/Makefile
  23. 0 24
      package/gatling/patches/patch-GNUmakefile
  24. 0 19
      package/gatling/patches/patch-http_c
  25. 0 37
      package/iptraf/Makefile
  26. 0 96
      package/iptraf/patches/patch-src_Makefile
  27. 0 12
      package/iptraf/patches/patch-src_bar_c
  28. 0 11
      package/iptraf/patches/patch-src_dirs_h
  29. 0 12
      package/iptraf/patches/patch-src_fltmgr_c
  30. 0 72
      package/iptraf/patches/patch-src_hostmon_c
  31. 0 12
      package/iptraf/patches/patch-src_ifaces_c
  32. 0 30
      package/iptraf/patches/patch-src_ifstats_c
  33. 0 12
      package/iptraf/patches/patch-src_ipfrag_c
  34. 0 12
      package/iptraf/patches/patch-src_iptraf_c
  35. 0 10
      package/iptraf/patches/patch-src_isdntab_c
  36. 0 50
      package/iptraf/patches/patch-src_landesc_c
  37. 0 11
      package/iptraf/patches/patch-src_links_h
  38. 0 30
      package/iptraf/patches/patch-src_log_c
  39. 0 22
      package/iptraf/patches/patch-src_options_c
  40. 0 37
      package/iptraf/patches/patch-src_othptab_c
  41. 0 87
      package/iptraf/patches/patch-src_packet_c
  42. 0 22
      package/iptraf/patches/patch-src_promisc_c
  43. 0 12
      package/iptraf/patches/patch-src_revname_c
  44. 0 39
      package/iptraf/patches/patch-src_rvnamed_c
  45. 0 16
      package/iptraf/patches/patch-src_rvnamed_h
  46. 0 12
      package/iptraf/patches/patch-src_serv_c
  47. 0 12
      package/iptraf/patches/patch-src_servname_c
  48. 0 47
      package/iptraf/patches/patch-src_tcptable_c
  49. 0 10
      package/iptraf/patches/patch-src_tcptable_h
  50. 0 13
      package/iptraf/patches/patch-src_tr_c
  51. 0 25
      package/iptraf/patches/patch-support_Makefile
  52. 0 12
      package/iptraf/patches/patch-support_input_c
  53. 0 21
      package/iptraf/patches/patch-support_listbox_c
  54. 27 0
      package/jack2/patches/patch-waf
  55. 125 0
      package/jack2/patches/patch-waflib_Build_py
  56. 11 0
      package/jack2/patches/patch-waflib_ConfigSet_py
  57. 108 0
      package/jack2/patches/patch-waflib_Configure_py
  58. 64 0
      package/jack2/patches/patch-waflib_Context_py
  59. 26 0
      package/jack2/patches/patch-waflib_Logs_py
  60. 19 0
      package/jack2/patches/patch-waflib_Node_py
  61. 70 0
      package/jack2/patches/patch-waflib_Options_py
  62. 74 0
      package/jack2/patches/patch-waflib_Runner_py
  63. 84 0
      package/jack2/patches/patch-waflib_Scripting_py
  64. 53 0
      package/jack2/patches/patch-waflib_TaskGen_py
  65. 74 0
      package/jack2/patches/patch-waflib_Task_py
  66. 39 0
      package/jack2/patches/patch-waflib_Tools_c_aliases_py
  67. 127 0
      package/jack2/patches/patch-waflib_Tools_c_config_py
  68. 27 0
      package/jack2/patches/patch-waflib_Tools_c_preproc_py
  69. 46 0
      package/jack2/patches/patch-waflib_Tools_c_tests_py
  70. 50 0
      package/jack2/patches/patch-waflib_Tools_ccroot_py
  71. 34 0
      package/jack2/patches/patch-waflib_Tools_compiler_c_py
  72. 34 0
      package/jack2/patches/patch-waflib_Tools_compiler_cxx_py
  73. 34 0
      package/jack2/patches/patch-waflib_Tools_irixcc_py
  74. 130 0
      package/jack2/patches/patch-waflib_Tools_msvc_py
  75. 58 0
      package/jack2/patches/patch-waflib_Tools_waf_unit_test_py
  76. 153 0
      package/jack2/patches/patch-waflib_Utils_py
  77. 11 0
      package/jack2/patches/patch-waflib_ansiterm_py
  78. 54 0
      package/jack2/patches/patch-waflib_extras_xcode6_py
  79. 11 0
      package/jack2/patches/patch-waflib_fixpy2_py
  80. 13 0
      package/jack2/patches/patch-waflib_processor_py
  81. 1 1
      package/kodi/Makefile
  82. 0 33
      package/l2tpns/Makefile
  83. 0 3
      package/l2tpns/files/l2tpns.conffiles
  84. 0 58
      package/l2tpns/patches/patch-Makefile
  85. 0 10
      package/l2tpns/patches/patch-cli_c
  86. 0 10
      package/l2tpns/patches/patch-cluster_c
  87. 0 51
      package/l2tpns/patches/patch-l2tpns_c
  88. 0 26
      package/libcli/Makefile
  89. 0 36
      package/libcli/patches/patch-Makefile
  90. 0 36
      package/libnfc-nci/Makefile
  91. 0 37
      package/libnfc-nci/patches/patch-configure_ac
  92. 0 36
      package/libnids/Makefile
  93. 0 20
      package/libnids/patches/patch-configure_in
  94. 0 27
      package/libowfat/Makefile
  95. 0 25
      package/libowfat/patches/patch-GNUmakefile
  96. 0 31
      package/libpri/Makefile
  97. 0 23
      package/libpri/patches/patch-Makefile
  98. 0 27
      package/mopd/Makefile
  99. 0 34
      package/mopd/src/Makefile
  100. 0 20
      package/mopd/src/README

+ 0 - 31
package/SDL_gfx/Makefile

@@ -1,31 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(ADK_TOPDIR)/rules.mk
-
-PKG_NAME:=		SDL_gfx
-PKG_VERSION:=		2.0.22
-PKG_RELEASE:=		2
-PKG_HASH:=		1575e7be73fd927ff0e3567dc06095773f5ba1b47872b9aa0d0fefebfd6d2bf0
-PKG_DESCR:=		sdl graphic library
-PKG_SECTION:=		libs/video
-PKG_DEPENDS:=		libsdl
-PKG_BUILDDEP:=		sdl
-PKG_URL:=		http://www.ferzkopp.net/joomla/content/view/19/14/
-PKG_SITES:=		http://www.ferzkopp.net/Software/SDL_gfx-2.0/
-PKG_LIBNAME:=		libsdl-gfx
-PKG_OPTS:=		dev
-
-DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz
-
-include $(ADK_TOPDIR)/mk/package.mk
-
-$(eval $(call PKG_template,LIBSDL_GFX,libsdl-gfx,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
-
-CONFIGURE_ARGS+=	--disable-mmx
-
-libsdl-gfx-install:
-	$(INSTALL_DIR) $(IDIR_LIBSDL_GFX)/usr/lib
-	$(CP) $(WRKINST)/usr/lib/libSDL_gfx.so* $(IDIR_LIBSDL_GFX)/usr/lib
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 30
package/SDL_ttf/Makefile

@@ -1,30 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(ADK_TOPDIR)/rules.mk
-
-PKG_NAME:=		SDL_ttf
-PKG_VERSION:=		2.0.10
-PKG_RELEASE:=		2
-PKG_HASH:=		7d38704bcc7c34029c2dcb73b2d4857e8ad76341c6e0faed279eb9f743c66c6a
-PKG_DESCR:=		truetype fonts for sdl applications
-PKG_SECTION:=		libs/fonts
-PKG_DEPENDS:=		libsdl libfreetype
-PKG_BUILDDEP:=		sdl freetype
-PKG_NEEDS:=		intl
-PKG_URL:=		http://www.libsdl.org/projects/SDL_ttf/
-PKG_SITES:=		http://www.libsdl.org/projects/SDL_ttf/release/
-PKG_LIBNAME:=		libsdl-ttf
-PKG_OPTS:=		dev
-
-DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz
-
-include $(ADK_TOPDIR)/mk/package.mk
-
-$(eval $(call PKG_template,LIBSDL_TTF,libsdl-ttf,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
-
-libsdl-ttf-install:
-	$(INSTALL_DIR) $(IDIR_LIBSDL_TTF)/usr/lib
-	$(CP) $(WRKINST)/usr/lib/libSDL_ttf*so* $(IDIR_LIBSDL_TTF)/usr/lib
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 32 - 0
package/aml/Makefile

@@ -0,0 +1,32 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(ADK_TOPDIR)/rules.mk
+
+PKG_NAME:=		aml
+PKG_VERSION:=		1.0.0
+PKG_RELEASE:=		1
+PKG_HASH:=		b2b8f743213af39f40e8bc611147d69e2ea9e010b9b19cb65246582338f28d96
+PKG_DESCR:=		andris's main loop
+PKG_SECTION:=		libs/misc
+PKG_SITES:=		https://github.com/any1/aml/archive/refs/tags/
+PKG_OPTS:=		dev
+
+DISTFILES:=             v$(PKG_VERSION).tar.gz
+
+include $(ADK_TOPDIR)/mk/package.mk
+
+$(eval $(call PKG_template,AML,aml,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION),$(PKG_OPTS)))
+
+WRKBUILD=               $(WRKDIR)/$(PKG_NAME)-obj
+
+CONFIG_STYLE:=		meson
+BUILD_STYLE:=		meson
+INSTALL_STYLE:=		meson
+
+aml-install:
+	$(INSTALL_DIR) $(IDIR_AML)/usr/lib
+	$(CP) $(WRKINST)/usr/lib/libaml*.so* \
+		$(IDIR_AML)/usr/lib
+
+include $(ADK_TOPDIR)/mk/pkg-bottom.mk

+ 0 - 32
package/beecrypt/Makefile

@@ -1,32 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(ADK_TOPDIR)/rules.mk
-
-PKG_NAME:=		beecrypt
-PKG_VERSION:=		4.2.1
-PKG_RELEASE:=		1
-PKG_HASH:=		286f1f56080d1a6b1d024003a5fa2158f4ff82cae0c6829d3c476a4b5898c55d
-PKG_DESCR:=		cryptography toolkit library
-PKG_SECTION:=		libs/crypto
-PKG_NEEDS:=		c++
-PKG_URL:=		http://beecrypt.sourceforge.net/
-PKG_SITES:=		http://sourceforge.net/projects/beecrypt/files/beecrypt/$(PKG_VERSION)/
-PKG_OPTS:=		dev
-
-DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz
-
-include $(ADK_TOPDIR)/mk/package.mk
-
-$(eval $(call PKG_template,BEECRYPT,beecrypt,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
-
-CONFIGURE_ARGS+=	--without-cplusplus \
-			--without-python \
-			--without-java
-
-beecrypt-install:
-	$(INSTALL_DIR) $(IDIR_BEECRYPT)/usr/lib
-	$(CP) $(WRKINST)/usr/lib/libbeecrypt*.so* \
-		$(IDIR_BEECRYPT)/usr/lib
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 11
package/beecrypt/patches/patch-include_beecrypt_gnu_h

@@ -1,11 +0,0 @@
---- beecrypt-4.2.1.orig/include/beecrypt/gnu.h	2009-07-12 09:19:44.000000000 +0200
-+++ beecrypt-4.2.1/include/beecrypt/gnu.h	2011-03-29 11:18:21.031808259 +0200
-@@ -72,7 +72,7 @@ typedef pthread_t bc_threadid_t;
-  * make assumptions about the size set by the configure script
-  */
- #if !defined(MP_WBITS)
--# define MP_WBITS	64U
-+# define MP_WBITS	32U
- #endif
- 
- #endif

+ 0 - 11
package/beecrypt/patches/patch-ltmain_sh

@@ -1,11 +0,0 @@
---- beecrypt-4.2.1.orig/ltmain.sh	2009-07-11 18:02:10.000000000 +0200
-+++ beecrypt-4.2.1/ltmain.sh	2011-03-29 11:27:09.431818481 +0200
-@@ -4772,7 +4772,7 @@ func_mode_link ()
-       # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC
-       # @file GCC response files
-       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
--      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*)
-+      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-fstack-protector*|-flto)
-         func_quote_for_eval "$arg"
- 	arg="$func_quote_for_eval_result"
-         func_append compile_command " $arg"

+ 0 - 32
package/chillispot/Makefile

@@ -1,32 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include ${ADK_TOPDIR}/rules.mk
-
-PKG_NAME:=		chillispot
-PKG_VERSION:=		1.1.0
-PKG_RELEASE:=		2
-PKG_HASH:=		b505ab963af8423ef8ae844951ef05fe1554630b448f1174074e9881cb474a01
-PKG_DESCR:=		wireless lan access point controller
-PKG_SECTION:=		net/wifi
-PKG_KDEPENDS:=		tun
-PKG_URL:=		http://www.chillispot.info/
-PKG_SITES:=		http://www.chillispot.info/download/
-
-DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz
-
-include ${ADK_TOPDIR}/mk/package.mk
-
-$(eval $(call PKG_template,CHILLISPOT,chillispot,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-
-AUTOTOOL_STYLE:=	autoreconf
-CONFIGURE_ENV+=         ac_cv_func_malloc_0_nonnull=yes \
-			ac_cv_func_realloc_0_nonnull=yes
-
-chillispot-install:
-	${INSTALL_DIR} ${IDIR_CHILLISPOT}/usr/sbin ${IDIR_CHILLISPOT}/etc
-	${INSTALL_DATA} ./files/chilli.conf \
-		${IDIR_CHILLISPOT}/etc/
-	${INSTALL_BIN} ${WRKINST}/usr/sbin/chilli ${IDIR_CHILLISPOT}/usr/sbin/
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 292
package/chillispot/files/chilli.conf

@@ -1,292 +0,0 @@
-# Sample ChilliSpot configuration file
-
-#fg
-#debug
-
-# TAG: interval
-# Re-read configuration file at this interval. Will also cause new domain
-# name lookups to be performed. Value is given in seconds.
-#interval 3600
-
-# TAG: pidfile
-# File to store information about the process id of the program.
-# The program must have write access to this file/directory.
-#pidfile /var/run/chilli.pid
-
-# TAG: statedir
-# Directory to use for nonvolatile storage.
-# The program must have write access to this directory.
-# This tag is currently ignored
-#statedir ./
-
-
-# TUN parameters
-
-# TAG: net
-# IP network address of external packet data network
-# Used to allocate dynamic IP addresses and set up routing.
-# Normally you do not need to uncomment this tag.
-#net 192.168.182.0/24
-
-# TAG: dynip
-# Dynamic IP address pool
-# Used to allocate dynamic IP addresses to clients.
-# If not set it defaults to the net tag.
-# Do not uncomment this tag unless you are an experienced user!
-#dynip 192.168.182.0/24
-
-# TAG: statip
-# Static IP address pool
-# Used to allocate static IP addresses to clients.
-# Do not uncomment this tag unless you are an experienced user!
-#statip 192.168.182.0/24
-
-
-# TAG: dns1
-# Primary DNS server.
-# Will be suggested to the client. 
-# If omitted the system default will be used.
-# Normally you do not need to uncomment this tag.
-#dns1 172.16.0.5
-
-# TAG: dns2
-# Secondary DNS server.
-# Will be suggested to the client.
-# If omitted the system default will be used.
-# Normally you do not need to uncomment this tag.
-#dns2 172.16.0.6
-
-# TAG: domain
-# Domain name
-# Will be suggested to the client.
-# Normally you do not need to uncomment this tag.
-#domain key.chillispot.org
-
-# TAG: ipup
-# Script executed after network interface has been brought up.
-# Executed with the following parameters: <devicename> <ip address>
-# <mask>
-# Normally you do not need to uncomment this tag.
-#ipup /etc/chilli.ipup
-
-# TAG: ipdown
-# Script executed after network interface has been taken down.
-# Executed with the following parameters: <devicename> <ip address>
-# <mask>
-# Normally you do not need to uncomment this tag.
-#ipdown /etc/chilli.ipdown
-
-# TAG: conup
-# Script executed after a user has been authenticated.
-# Executed with the following parameters: <devicename> <ip address>
-# <mask> <user ip address> <user mac address> <filter ID>
-# Normally you do not need to uncomment this tag.
-#conup /etc/chilli.conup
-
-# TAG: conup
-# Script executed after a user has disconnected.
-# Executed with the following parameters: <devicename> <ip address>
-# <mask> <user ip address> <user mac address> <filter ID>
-# Normally you do not need to uncomment this tag.
-#conup /etc/chilli.condown
-
-
-# Radius parameters
-
-# TAG: radiuslisten
-# IP address to listen to
-# Normally you do not need to uncomment this tag.
-radiuslisten 127.0.0.1
-
-# TAG: radiusserver1
-# IP address of radius server 1
-# For most installations you need to modify this tag.
-radiusserver1 localhost
-
-# TAG: radiusserver2
-# IP address of radius server 2
-# If you have only one radius server you should set radiusserver2 to the
-# same value as radiusserver1.
-# For most installations you need to modify this tag.
-radiusserver2 localhost
-
-# TAG: radiusauthport
-# Radius authentication port
-# The UDP port number to use for radius authentication requests.
-# The same port number is used for both radiusserver1 and radiusserver2.
-# Normally you do not need to uncomment this tag.
-#radiusauthport 1812
-
-# TAG: radiusacctport
-# Radius accounting port
-# The UDP port number to use for radius accounting requests.
-# The same port number is used for both radiusserver1 and radiusserver2.
-# Normally you do not need to uncomment this tag.
-#radiusacctport 1813
-
-# TAG: radiussecret
-# Radius shared secret for both servers
-# For all installations you should modify this tag.
-radiussecret testing123
-
-# TAG: radiusnasid
-# Radius NAS-Identifier
-# Normally you do not need to uncomment this tag.
-#radiusnasid nas01
-
-# TAG: radiusnasip
-# Radius NAS-IP-Address
-# Normally you do not need to uncomment this tag.
-#radiusnasip 127.0.0.1
-
-# TAG: radiuscalled
-# Radius Called-Station-ID
-# Normally you do not need to uncomment this tag.
-#radiuscalled 00133300
-
-# TAG: radiuslocationid
-# WISPr Location ID. Should be in the format: isocc=<ISO_Country_Code>,
-# cc=<E.164_Country_Code>,ac=<E.164_Area_Code>,network=<ssid/ZONE>
-# Normally you do not need to uncomment this tag.
-#radiuslocationid isocc=us,cc=1,ac=408,network=ACMEWISP_NewarkAirport
-
-# TAG: radiuslocationname
-# WISPr Location Name. Should be in the format: 
-# <HOTSPOT_OPERATOR_NAME>,<LOCATION>
-# Normally you do not need to uncomment this tag.
-#radiuslocationname ACMEWISP,Gate_14_Terminal_C_of_Newark_Airport
-
-
-# Radius proxy parameters
-
-# TAG: proxylisten
-# IP address to listen to
-# Normally you do not need to uncomment this tag.
-#proxylisten 10.0.0.1
-
-# TAG: proxyport
-# UDP port to listen to. 
-# If not specified a port will be selected by the system
-# Normally you do not need to uncomment this tag.
-#proxyport 1645
-
-# TAG: proxyclient
-# Client(s) from which we accept radius requests
-# Normally you do not need to uncomment this tag.
-#proxyclient 10.0.0.1/24
-
-# TAG: proxysecret
-# Radius proxy shared secret for all clients
-# If not specified defaults to radiussecret
-# Normally you do not need to uncomment this tag.
-#proxysecret testing123
-
-
-# Remote configuration management
-
-# TAG: confusername
-# If confusername is specified together with confpassword chillispot
-# will at regular intervals specified by the interval option query the
-# radius server for configuration information.
-# Normally you do not need to uncomment this tag.
-#confusername conf
-
-# TAG: confpassword
-# If confusername is specified together with confpassword chillispot
-# will at regular intervals specified by the interval option query the
-# radius server for configuration information.
-# Normally you do not need to uncomment this tag.
-#confpassword secret
-
-
-# DHCP Parameters
-
-# TAG: dhcpif
-# Ethernet interface to listen to.
-# This is the network interface which is connected to the access points.
-# In a typical configuration this tag should be set to eth1.
-dhcpif wlan0
-
-# TAG: dhcpmac
-# Use specified MAC address.
-# An address in the range  00:00:5E:00:02:00 - 00:00:5E:FF:FF:FF falls
-# within the IANA range of addresses and is not allocated for other
-# purposes.
-# Normally you do not need to uncomment this tag.
-#dhcpmac 00:00:5E:00:02:00
-
-# TAG: lease
-# Time before DHCP lease expires
-# Normally you do not need to uncomment this tag.
-#lease 600
-
-
-# Universal access method (UAM) parameters
-
-# TAG: uamserver
-# URL of web server handling authentication.
-uamserver https://192.168.182.1/hotspotlogin
-
-# TAG: uamhomepage
-# URL of welcome homepage.
-# Unauthenticated users will be redirected to this URL. If not specified
-# users will be redirected to the uamserver instead.
-# Normally you do not need to uncomment this tag.
-uamhomepage http://localhost
-
-# TAG: uamsecret
-# Shared between chilli and authentication web server
-#uamsecret ht2eb8ej6s4et3rg1ulp
-
-# TAG: uamlisten
-# IP address to listen to for authentication requests
-# Do not uncomment this tag unless you are an experienced user!
-#uamlisten 192.168.182.1
-
-# TAG: uamport
-# TCP port to listen to for authentication requests
-# Do not uncomment this tag unless you are an experienced user!
-#uamport 3990
-
-# TAG: uamallowed
-# Comma separated list of domain names, IP addresses or network segments
-# the client can access without first authenticating.
-# It is possible to specify this tag multiple times.
-# Normally you do not need to uncomment this tag.
-#uamallowed www.chillispot.org,10.11.12.0/24
-
-# TAG: uamanydns
-# If this flag is given unauthenticated users are allowed to use
-# any DNS server.
-# Normally you do not need to uncomment this tag.
-#uamanydns
-
-
-# MAC authentication
-
-# TAG: macauth
-# If this flag is given users will be authenticated only on their MAC
-# address.
-# Normally you do not need to uncomment this tag.
-#macauth
-
-# TAG: macallowed
-# List of MAC addresses.
-# The MAC addresses specified in this list will be authenticated only on
-# their MAC address.
-# This tag is ignored if the macauth tag is given.
-# It is possible to specify this tag multiple times.
-# Normally you do not need to uncomment this tag.
-#macallowed 00-0A-5E-AC-BE-51,00-30-1B-3C-32-E9
-
-# TAG: macpasswd
-# Password to use for MAC authentication.
-# Normally you do not need to uncomment this tag.
-#macpasswd password
-
-# TAG: macsuffix
-# Suffix to add to MAC address in order to form the username.
-# Normally you do not need to uncomment this tag.
-#macsuffix suffix
-
-

+ 0 - 1
package/chillispot/files/chillispot.conffiles

@@ -1 +0,0 @@
-/etc/chilli.conf

+ 0 - 27
package/chillispot/files/chillispot.init

@@ -1,27 +0,0 @@
-#!/bin/sh
-#PKG chillispot
-#INIT 70
-. /etc/rc.conf
-
-case $1 in
-autostop) ;;
-autostart)
-	test x"${chillispot:-NO}" = x"NO" && exit 0
-	test x"$chillispot" = x"DAEMON" && test -x /bin/mksh && exec mksh -T- $0 start
-	exec sh $0 start
-	;;
-start)
-	/usr/sbin/chilli
-	;;
-stop)
-	kill $(pgrep -f /usr/sbin/chilli)
-	;;
-restart)
-	sh $0 stop
-	sh $0 start
-	;;
- *)
-	echo "usage: $0 {start | stop | restart}"
-	exit 1
-esac
-exit $?

+ 0 - 3
package/chillispot/files/chillispot.postinst

@@ -1,3 +0,0 @@
-#!/bin/sh
-. $IPKG_INSTROOT/etc/functions.sh
-add_rcconf chillispot NO

+ 0 - 57
package/chillispot/patches/patch-src_tun_c

@@ -1,57 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- chillispot-1.1.0.orig/src/tun.c	2006-09-24 19:48:25.000000000 +0200
-+++ chillispot-1.1.0/src/tun.c	2009-05-21 20:51:19.000000000 +0200
-@@ -366,7 +366,7 @@ int tun_addaddr(struct tun_t *this,
-   this->addrs++;
-   return 0;
- 
--#elif defined (__FreeBSD__) defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
-+#elif defined (__FreeBSD__) || defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
- 
-   int fd;
-   struct ifaliasreq      areq;
-@@ -445,7 +445,7 @@ int tun_setaddr(struct tun_t *this,
- #if defined(__linux__)
-   ifr.ifr_netmask.sa_family = AF_INET;
- 
--#elif defined(__FreeBSD__) defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
-+#elif defined(__FreeBSD__) || defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
-   ((struct sockaddr_in *) &ifr.ifr_addr)->sin_len = 
-     sizeof (struct sockaddr_in);
-   ((struct sockaddr_in *) &ifr.ifr_dstaddr)->sin_len = 
-@@ -497,7 +497,7 @@ int tun_setaddr(struct tun_t *this,
-     ((struct sockaddr_in *) &ifr.ifr_netmask)->sin_addr.s_addr = 
-       netmask->s_addr;
- 
--#elif defined(__FreeBSD__) defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
-+#elif defined(__FreeBSD__) || defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
-     ((struct sockaddr_in *) &ifr.ifr_addr)->sin_addr.s_addr = 
-       netmask->s_addr;
- 
-@@ -585,7 +585,7 @@ int tun_route(struct tun_t *this,
-   close(fd);
-   return 0;
-   
--#elif defined(__FreeBSD__) defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
-+#elif defined(__FreeBSD__) || defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
- 
- struct {
-   struct rt_msghdr rt;
-@@ -674,7 +674,7 @@ int tun_new(struct tun_t **tun)
- #if defined(__linux__)
-   struct ifreq ifr;
- 
--#elif defined(__FreeBSD__) defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
-+#elif defined(__FreeBSD__) || defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
-   char devname[IFNAMSIZ+5]; /* "/dev/" + ifname */
-   int devnum;
-   struct ifaliasreq areq;
-@@ -722,7 +722,7 @@ int tun_new(struct tun_t **tun)
-   ioctl((*tun)->fd, TUNSETNOCSUM, 1); /* Disable checksums */
-   return 0;
-   
--#elif defined(__FreeBSD__) defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
-+#elif defined(__FreeBSD__) || defined (__OpenBSD__) || defined (__NetBSD__) || defined (__APPLE__)
- 
-   /* Find suitable device */
-   for (devnum = 0; devnum < 255; devnum++) { /* TODO 255 */ 

+ 0 - 33
package/deco/Makefile

@@ -1,33 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include ${ADK_TOPDIR}/rules.mk
-
-PKG_NAME:=		deco
-PKG_VERSION:=		39
-PKG_RELEASE:=		2
-PKG_HASH:=		30d4cfa1ed2eb318c6e31fd6c5bc2fe4831d7ba6e0325e08d34783d043e00c65
-PKG_DESCR:=		full featured text-based file manager
-PKG_SECTION:=		sys/misc
-PKG_DEPENDS:=		libncurses
-PKG_BUILDDEP:=		ncurses
-PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=deco/}
-
-DISTFILES:=		${PKG_NAME}${PKG_VERSION}.tgz
-WRKDIST=		${WRKDIR}/${PKG_NAME}${PKG_VERSION}
-
-include ${ADK_TOPDIR}/mk/package.mk
-
-$(eval $(call PKG_template,DECO,deco,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-
-TARGET_CFLAGS+=		-fcommon
-TARGET_LDFLAGS+=	-ltinfo
-INSTALL_STYLE:=		manual
-
-do-install:
-	${INSTALL_DIR} ${IDIR_DECO}/usr/bin ${IDIR_DECO}/usr/lib/deco
-	${INSTALL_BIN} ${WRKBUILD}/deco ${IDIR_DECO}/usr/bin/deco
-	${INSTALL_DATA} ${WRKBUILD}/profile ${IDIR_DECO}/usr/lib/deco/profile
-	${INSTALL_DATA} ${WRKBUILD}/menu ${IDIR_DECO}/usr/lib/deco/menu
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 11
package/deco/patches/100-tty.c.patch

@@ -1,11 +0,0 @@
---- src/tty.c	2005-09-25 00:23:41.671022039 -0700
-+++ str_new/tty.c	2005-09-25 01:09:37.189119615 -0700
-@@ -14,7 +14,7 @@
- #if HAVE_TERMIOS_H
- #   include <sys/termios.h>
- #   if HAVE_SYS_IOCTL_H
--#      include <sys/ioctl.h>
-+/*#      include <sys/ioctl.h>*/
- #   endif
- #   define HAVE_TERMIO_H 1
- #   define termio termios

+ 0 - 56
package/firefox/Makefile

@@ -1,56 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(ADK_TOPDIR)/rules.mk
-
-PKG_NAME:=		firefox
-PKG_VERSION:=		129.0.2
-PKG_RELEASE:=		1
-PKG_HASH:=		35a1da121af474833d013ecbc1f77aa55bb35678fe06d438842d320dfab3f344
-PKG_DESCR:=		www browser
-PKG_SECTION:=		app/browser
-PKG_DEPENDS:=		pango libfreetype fontconfig libxcomposite libxcursor
-PKG_DEPENDS+=		libgtk3 dbus-glib alsa-lib harfbuzz
-PKG_BUILDDEP:=		python3-host nodejs-host pango freetype fontconfig libXcomposite
-PKG_BUILDDEP+=		libXcursor libgtk3 dbus-glib alsa-lib harfbuzz
-PKG_SITES:=		https://ftp.mozilla.org/pub/firefox/releases/$(PKG_VERSION)/source/
-
-PKG_ARCH_DEPENDS:=	aarch64
-
-DISTFILES:=             $(PKG_NAME)-$(PKG_VERSION).source.tar.xz
-
-include $(ADK_TOPDIR)/mk/package.mk
-
-$(eval $(call PKG_template,FIREFOX,firefox,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION)))
-
-WRKBUILD=		$(WRKDIR)/$(PKG_NAME)-obj
-
-ifeq ($(ADK_TARGET_ARCH),aarch64)
-TARGET_NAME:=		aarch64-linux-gnu
-endif
-
-CONFIG_STYLE:=		minimal
-CONFIGURE_ENV+=		CROSS_COMPILE=1 \
-			BINDGEN_CFLAGS="--sysroot /usr/$(TARGET_NAME)" \
-			AS="$(GNU_TARGET_NAME)-gcc"
-CONFIGURE_ARGS+=	--prefix=/usr \
-			--target=$(TARGET_NAME) \
-			--with-toolchain-prefix=$(GNU_TARGET_NAME)- \
-			--enable-application=browser \
-			--enable-official-branding \
-			--disable-audio-backends \
-			--without-wasm-sandboxed-libraries \
-			--disable-profiling \
-			--disable-crashreporter \
-			--with-clang-path=/usr/bin/clang-18 \
-			--with-libclang-path=/usr/lib/llvm-18/lib
-
-firefox-install:
-	$(INSTALL_DIR) $(IDIR_FIREFOX)/usr/bin
-	$(INSTALL_DIR) $(IDIR_FIREFOX)/usr/lib/firefox
-	$(CP) $(WRKINST)/usr/bin/firefox \
-		$(IDIR_FIREFOX)/usr/bin
-	$(CP) $(WRKINST)/usr/lib/firefox/* \
-		$(IDIR_FIREFOX)/usr/lib/firefox
-
-include $(ADK_TOPDIR)/mk/pkg-bottom.mk

+ 0 - 13
package/firefox/patches/patch-build_moz_configure_flags_configure

@@ -1,13 +0,0 @@
---- firefox-129.0.2.orig/build/moz.configure/flags.configure	2024-08-19 21:21:42.000000000 +0200
-+++ firefox-129.0.2/build/moz.configure/flags.configure	2024-09-08 06:27:20.661198142 +0200
-@@ -72,10 +72,6 @@ def link_libstdcxx_statically(
-             )
- 
- 
--@depends(when=link_libstdcxx_statically)
--def check_libstdcxx_linkage():
--    die("Firefox does not support linking statically with libstdc++")
--
- 
- check_and_add_flag(
-     "-mieee",

+ 0 - 37
package/firefox/patches/patch-servo_components_style_traits_values_rs

@@ -1,37 +0,0 @@
---- firefox-129.0.2.orig/servo/components/style_traits/values.rs	2024-08-19 21:21:51.000000000 +0200
-+++ firefox-129.0.2/servo/components/style_traits/values.rs	2024-09-08 06:18:31.271680673 +0200
-@@ -388,11 +388,11 @@ impl Separator for Space {
-     where
-         F: for<'tt> FnMut(&mut Parser<'i, 'tt>) -> Result<T, ParseError<'i, E>>,
-     {
--        input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less.
-+        input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less.
-         let mut results = vec![parse_one(input)?];
-         loop {
--            input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less.
--            if let Ok(item) = input.try(&mut parse_one) {
-+            input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less.
-+            if let Ok(item) = input.try_parse(&mut parse_one) {
-                 results.push(item);
-             } else {
-                 return Ok(results);
-@@ -413,14 +413,14 @@ impl Separator for CommaWithSpace {
-     where
-         F: for<'tt> FnMut(&mut Parser<'i, 'tt>) -> Result<T, ParseError<'i, E>>,
-     {
--        input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less.
-+        input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less.
-         let mut results = vec![parse_one(input)?];
-         loop {
--            input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less.
-+            input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less.
-             let comma_location = input.current_source_location();
--            let comma = input.try(|i| i.expect_comma()).is_ok();
--            input.skip_whitespace(); // Unnecessary for correctness, but may help try() rewind less.
--            if let Ok(item) = input.try(&mut parse_one) {
-+            let comma = input.try_parse(|i| i.expect_comma()).is_ok();
-+            input.skip_whitespace(); // Unnecessary for correctness, but may help try_parse() rewind less.
-+            if let Ok(item) = input.try_parse(&mut parse_one) {
-                 results.push(item);
-             } else if comma {
-                 return Err(comma_location.new_unexpected_token_error(Token::Comma));

+ 0 - 10
package/firefox/patches/patch-servo_ports_geckolib_cbindgen_toml

@@ -1,10 +0,0 @@
---- firefox-129.0.2.orig/servo/ports/geckolib/cbindgen.toml	2024-08-19 21:21:52.000000000 +0200
-+++ firefox-129.0.2/servo/ports/geckolib/cbindgen.toml	2024-09-08 06:18:31.275680774 +0200
-@@ -360,7 +360,6 @@ renaming_overrides_prefixing = true
- "Keyframe" = "Keyframe"
- "nsChangeHint" = "nsChangeHint"
- "ServoElementSnapshotTable" = "ServoElementSnapshotTable"
--"Keyframe" = "Keyframe"
- "ComputedKeyframeValues" = "ComputedKeyframeValues"
- "OriginFlags" = "OriginFlags"
- "ServoTraversalFlags" = "ServoTraversalFlags"

+ 0 - 39
package/flask-login/Makefile

@@ -1,39 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(ADK_TOPDIR)/rules.mk
-
-# always use tab spaces as separator, no spaces
-PKG_NAME:=		Flask-Login
-PKG_VERSION:=		0.5.0
-PKG_RELEASE:=		1
-PKG_HASH:=		6d33aef15b5bcead780acc339464aae8a6e28f13c90d8b1cf9de8b549d1c0b4b
-PKG_DESCR:=		login management for flask
-PKG_SECTION:=		dev/python
-PKG_DEPENDS:=		flask
-PKG_URL:=		https://pypi.org/project/Flask-Login	
-PKG_SITES:=		https://files.pythonhosted.org/packages/f9/01/f6c0a3a654ca125cf9cd273314c03a8bc6a47bf861765c8c1d375e15a28d/
-DISTFILES:=             $(PKG_NAME)-$(PKG_VERSION).tar.gz
-
-include $(ADK_TOPDIR)/mk/package.mk
-
-$(eval $(call PKG_template,FLASK_LOGIN,flask-login,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION)))
-
-CONFIG_STYLE:=		manual
-BUILD_STYLE:=		manual
-INSTALL_STYLE:=		manual
-
-include $(ADK_TOPDIR)/mk/python3.mk
-
-do-build:
-	cd $(WRKBUILD); env PYTHONPATH=$(PYTHON_LIBDIR) $(PYTHON) ./setup.py build
-	$(INSTALL_DIR) $(WRKINST)/usr/lib/python$(PYTHON_VERSION)/site-packages
-	cd $(WRKBUILD); env PYTHONPATH=$(PYTHON_LIBDIR):$(WRKINST)/usr/lib/python$(PYTHON_VERSION)/site-packages $(PYTHON) ./setup.py install --prefix="$(WRKINST)/usr"
-
-do-install:
-	$(INSTALL_DIR) $(IDIR_FLASK_LOGIN)/usr/lib/python$(PYTHON_VERSION)/site-packages
-	$(CP) $(WRKINST)/usr/lib/python$(PYTHON_VERSION)/site-packages/Flask_Login* $(IDIR_FLASK_LOGIN)/usr/lib/python$(PYTHON_VERSION)/site-packages/
-	$(CP) $(WRKINST)/usr/lib/python$(PYTHON_VERSION)/site-packages/easy-install.pth $(IDIR_FLASK_LOGIN)/usr/lib/python$(PYTHON_VERSION)/site-packages/$(PKG_NAME).pth
-
-# please remove ALL above comments, before commiting
-include $(ADK_TOPDIR)/mk/pkg-bottom.mk

+ 0 - 39
package/flask/Makefile

@@ -1,39 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(ADK_TOPDIR)/rules.mk
-
-PKG_NAME:=		Flask
-PKG_VERSION:=		1.1.1
-PKG_RELEASE:=		1
-PKG_HASH:=		13f9f196f330c7c2c5d7a5cf91af894110ca0215ac051b5844701f2bfd934d52
-PKG_DESCR:=		flask python web framework	
-PKG_SECTION:=		dev/python	
-PKG_URL:=		https://pypi.org/project/Flask/	
-PKG_SITES:=		https://files.pythonhosted.org/packages/2e/80/3726a729de758513fd3dbc64e93098eb009c49305a97c6751de55b20b694/
-PKG_DEPENDS:=		python3 python3-mod-zlib
-PKG_BUILDDEP:=		python3
-
-DISTFILES:=             Flask-$(PKG_VERSION).tar.gz
-
-include $(ADK_TOPDIR)/mk/package.mk
-
-$(eval $(call PKG_template,FLASK,flask,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION),$(PKG_OPTS)))
-
-CONFIG_STYLE:=		manual
-BUILD_STYLE:=		manual
-INSTALL_STYLE:=		manual
-
-include $(ADK_TOPDIR)/mk/python3.mk
-
-do-build:
-	cd $(WRKBUILD); env PYTHONPATH=$(PYTHON_LIBDIR) $(PYTHON) ./setup.py build
-	$(INSTALL_DIR) $(WRKINST)/usr/lib/python$(PYTHON_VERSION)/site-packages
-	cd $(WRKBUILD); env PYTHONPATH=$(PYTHON_LIBDIR):$(WRKINST)/usr/lib/python$(PYTHON_VERSION)/site-packages $(PYTHON) ./setup.py install --prefix="$(WRKINST)/usr"
-
-do-install:
-	$(INSTALL_DIR) $(IDIR_FLASK)/usr/lib/python$(PYTHON_VERSION)/site-packages
-	$(CP) $(WRKINST)/usr/lib/python$(PYTHON_VERSION)/site-packages/*egg $(IDIR_FLASK)/usr/lib/python$(PYTHON_VERSION)/site-packages/
-	$(CP) $(WRKINST)/usr/lib/python$(PYTHON_VERSION)/site-packages/easy-install.pth $(IDIR_FLASK)/usr/lib/python$(PYTHON_VERSION)/site-packages/$(PKG_NAME).pth
-
-include $(ADK_TOPDIR)/mk/pkg-bottom.mk

+ 0 - 37
package/flask/patches/patch-setup_py

@@ -1,37 +0,0 @@
---- Flask-1.1.1.orig/setup.py	2019-07-08 19:59:15.000000000 +0200
-+++ Flask-1.1.1/setup.py	2020-04-11 10:54:23.217330259 +0200
-@@ -1,8 +1,32 @@
- import io
- import re
- 
--from setuptools import find_packages
--from setuptools import setup
-+try:
-+    from setuptools import find_packages
-+except ImportError:
-+    import os
-+    from distutils.util import convert_path
-+
-+    def find_packages(base_path):
-+        base_path = convert_path(base_path)
-+        found = []
-+        for root, dirs, files in os.walk(base_path, followlinks=True):
-+            dirs[:] = [d for d in dirs if d[0] != '.' and d not in ('ez_setup', '__pycache__')]
-+            relpath = os.path.relpath(root, base_path)
-+            parent = relpath.replace(os.sep, '.').lstrip('.')
-+            if relpath != '.' and parent not in found:
-+                # foo.bar package but no foo package, skip
-+                continue
-+            for dir in dirs:
-+                if os.path.isfile(os.path.join(root, dir, '__init__.py')):
-+                    package = '.'.join((parent, dir)) if parent else dir
-+                    found.append(package)
-+        return found
-+
-+try:
-+    from setuptools import setup
-+except ImportError:
-+    from distutils.core import setup
- 
- with io.open("README.rst", "rt", encoding="utf8") as f:
-     readme = f.read()

+ 0 - 34
package/gatling/Makefile

@@ -1,34 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include ${ADK_TOPDIR}/rules.mk
-
-PKG_NAME:=		gatling
-PKG_VERSION:=		0.16
-PKG_RELEASE:=		1
-PKG_HASH:=		5f96438ee201d7f1f6c2e0849ff273b196bdc7493f29a719ce8ed08c8be6365b
-PKG_DESCR:=		small non-forking webserver
-PKG_SECTION:=		net/http
-PKG_BUILDDEP:=		libowfat
-PKG_NEEDS:=		iconv
-PKG_URL:=		https://www.fefe.de/gatling/
-PKG_SITES:=		https://www.fefe.de/gatling/
-
-include ${ADK_TOPDIR}/mk/package.mk
-
-$(eval $(call PKG_template,GATLING,gatling,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-
-CONFIG_STYLE:=		manual
-INSTALL_STYLE:=		manual
-
-MAKE_FILE:=		GNUmakefile
-ALL_TARGET:=		gatling
-XAKE_FLAGS+=		CC='${TARGET_CC}' \
-			CFLAGS='${TARGET_CPPFLAGS} ${TARGET_CFLAGS}' \
-			ZLIB=0 DIET= prefix='${WRKINST}/usr'
-
-do-install:
-	${INSTALL_DIR} ${IDIR_GATLING}/usr/sbin
-	${INSTALL_BIN} ${WRKBUILD}/gatling ${IDIR_GATLING}/usr/sbin/
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 24
package/gatling/patches/patch-GNUmakefile

@@ -1,24 +0,0 @@
-$Id$
---- gatling-0.16.orig/GNUmakefile	2020-05-13 15:53:27.000000000 +0200
-+++ gatling-0.16/GNUmakefile	2024-02-23 04:29:47.451896784 +0100
-@@ -25,7 +25,7 @@ CC=$(CROSS)gcc
- endif
- 
- CFLAGS=-pipe -Wall
--LDFLAGS=
-+LDFLAGS?=
- 
- #CFLAGS+=-DSTATE_DEBUG -DMOREDEBUG -DDEBUG_EVENTS -DSMDEBUG
- 
-@@ -194,9 +194,10 @@ havesetresuid.h: trysetresuid.c
- dummy.c:
- 	touch $@
- 
-+RANLIB?=ranlib
- libsocketkludge.a: libsocket libiconv dummy.o
- 	ar q $@ dummy.o
--	-ranlib $@
-+	-${RANLIB} $@
- 
- LDLIBS+=`cat libsocket libiconv libcrypt`
- 

+ 0 - 19
package/gatling/patches/patch-http_c

@@ -1,19 +0,0 @@
---- gatling-0.16.orig/http.c	2020-11-26 16:36:13.000000000 +0100
-+++ gatling-0.16/http.c	2024-02-23 05:17:40.115857819 +0100
-@@ -2202,16 +2202,9 @@ static void get_md5_randomness(const uin
-   static int initialized;
-   if (!initialized) {
-     unsigned char buf[16];
--#if defined(__linux__) || defined(__OpenBSD__)
--    if (getentropy(buf, sizeof buf)) {
--      buffer_putsflush(buffer_2, "getentropy failed (should never happen)\n");
--      // carry on with bad randomness
--    }
--#else
-     int fd=open("/dev/urandom",O_RDONLY);
-     read(fd,buf,16);
-     close(fd);
--#endif
-     MD5Init(&md5_ctx);
-     MD5Update(&md5_ctx,buf,16);
-     initialized=1;

+ 0 - 37
package/iptraf/Makefile

@@ -1,37 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include ${ADK_TOPDIR}/rules.mk
-
-PKG_NAME:=		iptraf
-PKG_VERSION:=		3.0.1
-PKG_RELEASE:=		1
-PKG_HASH:=		95a069af8c4d22206985f6ce69acc27cfcfef1d58ad6ab8dbb10c698642ac08a
-PKG_DESCR:=		console-based network monitoring program.
-PKG_SECTION:=		net/perf
-PKG_DEPENDS:=		libncurses
-PKG_BUILDDEP:=		ncurses
-PKG_URL:=		http://iptraf.seul.org/
-PKG_SITES:=		ftp://iptraf.seul.org/pub/iptraf/
-
-DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz
-WRKSRC=			${WRKDIST}/src
-
-include ${ADK_TOPDIR}/mk/package.mk
-
-$(eval $(call PKG_template,IPTRAF,iptraf,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-
-CONFIG_STYLE:=		manual
-INSTALL_STYLE:=		manual
-
-TARGET_CPPFLAGS+=	-D_GNU_SOURCE
-TARGET_LDFLAGS+=	-ltinfo
-XAKE_FLAGS+=		PLATFORM="-DPLATFORM=\\\"Linux/${ARCH}\\\"" \
-			TARGET="/usr/bin" \
-			WORKDIR="/var/lib/iptraf"
-
-do-install:
-	${INSTALL_DIR} ${IDIR_IPTRAF}/usr/bin
-	${INSTALL_BIN} ${WRKBUILD}/iptraf ${IDIR_IPTRAF}/usr/bin/
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 96
package/iptraf/patches/patch-src_Makefile

@@ -1,96 +0,0 @@
-$Id$
---- iptraf-3.0.1.orig/src/Makefile	2005-09-13 11:11:17.000000000 +0200
-+++ iptraf-3.0.1/src/Makefile	2024-02-25 18:13:10.945645560 +0100
-@@ -17,8 +17,9 @@ VERSION 	= -DVERSION=\"$(VERNUMBER)\"
- #
- BINDIR		= ../../iptraf-$(VERNUMBER).bin.$(ARCH)
- 
--CC		= gcc
--LIBS		= -L../support -ltextbox -lpanel -lncurses   # in this order!
-+CC		?= gcc
-+LIBS		?=
-+LIBS		+= -ltextbox -lpanel -lncurses   # in this order!
- 
- # comment this one out to omit debug code when done.
- 
-@@ -31,15 +32,17 @@ PROF		= #-pg
- # options to be passed to the compiler.  I don't believe they need to be
- # modified (except for -m486 on non-Intel x86 platforms).
- 
--CFLAGS		= -Wall #-O2 #-m486
-+CFLAGS		?= -Wall #-O2 #-m486
- DIRS		= -DWORKDIR=\"$(WORKDIR)\" \
- 		  -DLOGDIR=\"$(LOGDIR)\" -DEXECDIR=\"$(TARGET)\"
--LDOPTS		= #-static
-+LDFLAGS ?=
-+LDFLAGS += 	-L../support
- 
- # you may want to change this to point to your ncurses include directory
- # if the ncurses include files are not in the default location.
- 
--INCLUDEDIR	= -I/usr/include/ncurses -I../support
-+CPPFLAGS ?=
-+CPPFLAGS +=	-I../support
- 
- # You can uncomment this one to disable the backspace key in input fields.
- # This means you must use the Del key or Ctrl+H combination to erase the
-@@ -98,41 +101,39 @@ LOCKDIR		= /var/run/iptraf
- # Object file names
- 
- OBJS = iptraf.o itrafmon.o packet.o tcptable.o othptab.o ifstats.o deskman.o \
--ipcsum.o hostmon.o fltedit.o tr.o cidr.o \
-+ipcsum.o hostmon.o fltedit.o cidr.o \
- fltselect.o ipfilter.o fltmgr.o ipfrag.o serv.o servname.o instances.o \
--timer.o revname.o pktsize.o landesc.o isdntab.o options.o promisc.o ifaces.o \
-+timer.o revname.o pktsize.o landesc.o options.o promisc.o ifaces.o \
- error.o log.o mode.o getpath.o bar.o parseproto.o
- 
- BINS = iptraf rvnamed rawtime
- 
- all: $(BINS)
--	@echo
--	@size $(BINS)
- 
- iptraf: $(OBJS) textlib
--	$(CC) $(LDOPTS) $(PROF) -o iptraf $(OBJS) $(LIBS)
-+	$(CC) $(LDFLAGS) -o iptraf $(OBJS) $(LIBS)
- 
- textlib:
--	make -C ../support
-+	$(MAKE) -C ../support
- 
- %.o: %.c *.h version
--	$(CC) $(CFLAGS) $(DIRS) $(INCLUDEDIR) $(VERSION) $(PLATFORM) $(PROF) $(DEBUG) $(EXECPERM) $(BSSETTING) -c -o $*.o $<
-+	$(CC) $(CPPFLAGS) $(CFLAGS) $(DIRS) $(VERSION) $(PLATFORM) $(EXECPERM) $(BSSETTING) -c -o $*.o $<
- 
- rvnamed: rvnamed.o getpath.o
--	$(CC) $(LDOPTS) $(PROF) -o rvnamed rvnamed.o getpath.o
-+	$(CC) $(LDFLAGS) -o $@ $^
- 
- rvnamed.o: rvnamed.c rvnamed.h
--	$(CC) $(CFLAGS) $(PROF) $(DEBUG) -c -o rvnamed.o rvnamed.c
-+	$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ rvnamed.c
- 
- rawtime: rawtime.c
--	$(CC) $(CFLAGS) $(LDOPTS) $(PROF) $(DEBUG) -o rawtime rawtime.c
-+	$(CC) $(CFLAGS) $(LDFLAGS) -o rawtime rawtime.c
- 
- 
- # rule to clear out all object files and the executables (pow!)
- 
- clean:
- 	rm -f *.o *~ core $(BINS)
--	make -C ../support clean 
-+	$(MAKE) -C ../support clean 
- 
- # I just included this rule to clear out the .o files, leaving the
- # executables, stripped and ready for packing.
-@@ -162,7 +163,7 @@ install:
- # and the compiled programs for release as a ready-to-run distribution.
- 
- dist-bin: all
--	$(CC) $(LDOPTS) $(PROF) -o iptraf $(OBJS) -L../support -ltextbox /usr/lib/libpanel.a /usr/lib/libncurses.a
-+	$(CC) $(LDFLAGS) -o iptraf $(OBJS) -L../support -ltextbox -lpanel -lncurses
- 	rm -rf $(BINDIR)
- 	mkdir $(BINDIR)
- 	/bin/cp -p ../CHANGES ../LICENSE ../FAQ ../INSTALL ../README* \

+ 0 - 12
package/iptraf/patches/patch-src_bar_c

@@ -1,12 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/bar.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/bar.c	2009-05-21 23:04:49.000000000 +0200
-@@ -26,7 +26,7 @@ void set_barptr(char **barptr, char *ent
- {
-     *barptr = entry;
-     *starttime = time(NULL);
--    bzero(spanbr, size);
-+    memset(spanbr, 0, size);
- 
-     if (!(*cleared)) {
-         wattrset(win, IPSTATATTR);

+ 0 - 11
package/iptraf/patches/patch-src_dirs_h

@@ -1,11 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/dirs.h	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/dirs.h	2008-10-09 17:34:11.000000000 +0200
-@@ -155,7 +155,6 @@
-  */
- 
- #define ETHFILE		get_path(T_WORKDIR, "ethernet.desc")
--#define FDDIFILE	get_path(T_WORKDIR, "fddi.desc")
- 
- /*
-  * The rvnamed program file

+ 0 - 12
package/iptraf/patches/patch-src_fltmgr_c

@@ -1,12 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/fltmgr.c	2005-09-13 09:27:51.000000000 +0200
-+++ iptraf-3.0.0/src/fltmgr.c	2008-10-09 17:35:25.000000000 +0200
-@@ -112,7 +112,7 @@ unsigned long int nametoaddr(char *ascna
- 
-         he = gethostbyname(ascname);
-         if (he != NULL)
--            bcopy((he->h_addr_list)[0], &result, he->h_length);
-+            memcpy(&result, (he->h_addr_list)[0], he->h_length);
-         else {
-             snprintf(imsg, 45, "Unable to resolve %s", ascname);
-             write_error(imsg, daemonized);

+ 0 - 72
package/iptraf/patches/patch-src_hostmon_c

@@ -1,72 +0,0 @@
---- iptraf-3.0.1.orig/src/hostmon.c	2007-09-25 11:18:56.000000000 +0200
-+++ iptraf-3.0.1/src/hostmon.c	2013-03-04 11:41:08.000000000 +0100
-@@ -32,7 +32,6 @@ details.
- #include <linux/if_ether.h>
- #include <linux/netdevice.h>
- #include <linux/if_fddi.h>
--#include <linux/if_tr.h>
- #include <net/if_arp.h>
- #include <stdlib.h>
- #include <time.h>
-@@ -294,8 +293,6 @@ void printethent(struct ethtab *table, s
-             wprintw(table->tabwin, "Ethernet");
-         else if (entry->un.desc.linktype == LINK_PLIP)
-             wprintw(table->tabwin, "PLIP");
--        else if (entry->un.desc.linktype == LINK_FDDI)
--            wprintw(table->tabwin, "FDDI");
- 
-         wprintw(table->tabwin, " HW addr: %s", entry->un.desc.ascaddr);
- 
-@@ -723,7 +720,6 @@ void hostmon(const struct OPTIONS *optio
-     unsigned long long updtime_usec = 0;
- 
-     struct desclist elist;      /* Ethernet description list */
--    struct desclist flist;      /* FDDI description list */
-     struct desclist *list = NULL;
- 
-     FILE *logfile = NULL;
-@@ -787,7 +783,6 @@ void hostmon(const struct OPTIONS *optio
- 
-     initethtab(&table, options->actmode);
-     loaddesclist(&elist, LINK_ETHERNET, WITHETCETHERS);
--    loaddesclist(&flist, LINK_FDDI, WITHETCETHERS);
- 
-     if (logging) {
-         if (strcmp(current_logfile, "") == 0) {
-@@ -901,8 +896,7 @@ void hostmon(const struct OPTIONS *optio
-             if (pkt_result != PACKET_OK)
-                 continue;
- 
--            if ((linktype == LINK_ETHERNET) || (linktype == LINK_FDDI)
--                || (linktype == LINK_PLIP) || (linktype == LINK_TR) ||
-+            if ((linktype == LINK_ETHERNET) || (linktype == LINK_PLIP) ||
-                 (linktype == LINK_VLAN)) {
- 
-                 if (fromaddr.sll_protocol == htons(ETH_P_IP))
-@@ -921,18 +915,6 @@ void hostmon(const struct OPTIONS *optio
-                     memcpy(scratch_daddr, ((struct ethhdr *) buf)->h_dest,
-                            ETH_ALEN);
-                     list = &elist;
--                } else if (linktype == LINK_FDDI) {
--                    memcpy(scratch_saddr, ((struct fddihdr *) buf)->saddr,
--                           FDDI_K_ALEN);
--                    memcpy(scratch_daddr, ((struct fddihdr *) buf)->daddr,
--                           FDDI_K_ALEN);
--                    list = &flist;
--                } else if (linktype == LINK_TR) {
--                    memcpy(scratch_saddr, ((struct trh_hdr *) buf)->saddr,
--                           TR_ALEN);
--                    memcpy(scratch_daddr, ((struct trh_hdr *) buf)->daddr,
--                           TR_ALEN);
--                    list = &flist;
-                 }
- 
-                 entry = in_ethtable(&table, linktype, scratch_saddr);
-@@ -999,7 +981,6 @@ void hostmon(const struct OPTIONS *optio
-     doupdate();
-     destroyethtab(&table);
-     destroydesclist(&elist);
--    destroydesclist(&flist);
-     unmark_facility(LANMONIDFILE, ifptr);
-     strcpy(current_logfile, "");
- }

+ 0 - 12
package/iptraf/patches/patch-src_ifaces_c

@@ -1,12 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/ifaces.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/ifaces.c	2008-10-09 17:34:11.000000000 +0200
-@@ -37,7 +37,7 @@ extern int accept_unsupported_interfaces
- extern int daemonized;
- 
- char ifaces[][6] =
--    { "lo", "eth", "sl", "ppp", "ippp", "plip", "fddi", "isdn", "dvb",
-+    { "lo", "eth", "sl", "ppp", "ippp", "plip", "isdn", "dvb",
-     "pvc", "hdlc", "ipsec", "sbni", "tr", "wvlan", "wlan", "sm2", "sm3",
-     "pent", "lec", "brg", "tun", "tap", "cipcb", "tunl", "vlan"
- };

+ 0 - 30
package/iptraf/patches/patch-src_ifstats_c

@@ -1,30 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.1.orig/src/ifstats.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.1/src/ifstats.c	2013-03-04 11:35:39.000000000 +0100
-@@ -167,7 +167,7 @@ void initiflist(struct iflist **list)
-              */
- 
-             itmp = malloc(sizeof(struct iflist));
--            bzero(itmp, sizeof(struct iflist));
-+            memset(itmp, 0, sizeof(struct iflist));
-             strcpy(itmp->ifname, ifname);
-             index++;
-             itmp->index = index;
-@@ -208,7 +208,7 @@ void positionptr(struct iftab *table, st
- 
-     if (*ptmp == NULL) {
-         *ptmp = malloc(sizeof(struct iflist));
--        bzero(*ptmp, sizeof(struct iflist));
-+        memset(*ptmp, 0, sizeof(struct iflist));
-         (*ptmp)->index = plast->index + 1;
-         plast->next_entry = *ptmp;
-         (*ptmp)->prev_entry = plast;
-@@ -879,7 +879,7 @@ void detstats(char *iface, const struct
-     update_panels();
-     doupdate();
- 
--    bzero(&totals, sizeof(struct iftotals));
-+    memset(&totals, 0, sizeof(struct iftotals));
- 
-     if (logging) {
-         if (strcmp(current_logfile, "") == 0) {

+ 0 - 12
package/iptraf/patches/patch-src_ipfrag_c

@@ -1,12 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/ipfrag.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/ipfrag.c	2009-05-21 23:04:36.000000000 +0200
-@@ -51,7 +51,7 @@ struct fragent *addnewdgram(struct iphdr
-         fragtail->next_entry = ptmp;
-         ptmp->prev_entry = fragtail;
-     }
--    bzero(ptmp, sizeof(struct fragent));
-+    memset(ptmp, 0, sizeof(struct fragent));
-     ptmp->fragdesclist = malloc(sizeof(struct fragdescent));
-     ptmp->fragdesclist->min = 0;
-     ptmp->fragdesclist->max = 65535;

+ 0 - 12
package/iptraf/patches/patch-src_iptraf_c

@@ -1,12 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/iptraf.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/iptraf.c	2009-05-21 23:02:08.000000000 +0200
-@@ -559,7 +559,7 @@ int main(int argc, char **argv)
-                 exit(1);
-             } else if (opt != -1) {
-                 if (optarg != 0) {
--                    bzero(keyparm, 12);
-+                    memset(keyparm, 0, 12);
-                     strncpy(keyparm, optarg, 11);
-                 } else
-                     strcpy(keyparm, "");

+ 0 - 10
package/iptraf/patches/patch-src_isdntab_c

@@ -1,10 +0,0 @@
---- iptraf-3.0.1.orig/src/isdntab.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.1/src/isdntab.c	2024-02-25 18:12:43.421645934 +0100
-@@ -20,7 +20,6 @@ details.
- #include <stdlib.h>
- #include <string.h>
- #include <sys/ioctl.h>
--#include <linux/isdn.h>
- #include "isdntab.h"
- 
- 

+ 0 - 50
package/iptraf/patches/patch-src_landesc_c

@@ -1,50 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/landesc.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/landesc.c	2009-05-21 23:01:53.000000000 +0200
-@@ -79,12 +79,10 @@ void loaddesclist(struct desclist *list,
-     char etherline[140];
-     int i, j;                   /* counters used when parsing /etc/ethers */
- 
--    bzero(list, sizeof(struct desclist));
-+    memset(list, 0, sizeof(struct desclist));
- 
-     if (linktype == LINK_ETHERNET)
-         fd = fopen(ETHFILE, "r");
--    else if (linktype == LINK_FDDI)
--        fd = fopen(FDDIFILE, "r");
- 
-     if (fd == NULL) {
-         return;
-@@ -95,8 +93,8 @@ void loaddesclist(struct desclist *list,
-             printnomem();
-             return;
-         }
--        bzero(ptmp, sizeof(struct desclistent));
--        bzero(descline, 140);
-+        memset(ptmp, 0, sizeof(struct desclistent));
-+        memset(descline, 0, 140);
-         fgets(descline, 140, fd);
- 
-         if (strcmp(descline, "") == 0) {
-@@ -145,9 +143,9 @@ void loaddesclist(struct desclist *list,
-             printnomem();
-             return;
-         }
--        bzero(ptmp, sizeof(struct desclistent));
--        bzero(descline, 140);
--        bzero(etherline, 140);
-+        memset(ptmp, 0, sizeof(struct desclistent));
-+        memset(descline, 0, 140);
-+        memset(etherline, 0, 140);
-         fgets(etherline, 140, fd);
- 
-         /* 
-@@ -205,8 +203,6 @@ void savedesclist(struct desclist *list,
- 
-     if (linktype == LINK_ETHERNET)
-         fd = fopen(ETHFILE, "w");
--    else if (linktype == LINK_FDDI)
--        fd = fopen(FDDIFILE, "w");
- 
-     if (fd < 0) {
-         etherr();

+ 0 - 11
package/iptraf/patches/patch-src_links_h

@@ -1,11 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/links.h	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/links.h	2008-10-09 17:34:11.000000000 +0200
-@@ -6,7 +6,6 @@
- #define LINK_ISDN_RAWIP		6
- #define LINK_ISDN_CISCOHDLC	7
- #define LINK_CISCOHDLC  7
--#define LINK_FDDI		8
- #define LINK_FRAD		9
- #define LINK_DLCI		10
- #define LINK_TR			11

+ 0 - 30
package/iptraf/patches/patch-src_log_c

@@ -1,30 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/log.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/log.c	2009-05-21 23:02:34.000000000 +0200
-@@ -125,7 +125,7 @@ void opentlog(FILE ** fd, char *logfilen
- 
- void genatime(time_t now, char *atime)
- {
--    bzero(atime, TIME_TARGET_MAX);
-+    memset(atime, 0, TIME_TARGET_MAX);
-     strncpy(atime, ctime(&now), 26);
-     atime[strlen(atime) - 1] = '\0';
- }
-@@ -204,7 +204,7 @@ void writeothplog(int logging, FILE * fd
-     char scratchpad[MSGSTRING_MAX];
- 
-     if (logging) {
--        bzero(msgbuffer, MSGSTRING_MAX);
-+        memset(msgbuffer, 0, MSGSTRING_MAX);
- 
-         strcpy(msgbuffer, protname);
-         strcat(msgbuffer, "; ");
-@@ -491,8 +491,6 @@ void writeethlog(struct ethtabent *list,
-                         ptmp->un.desc.ascaddr);
-             else if (ptmp->un.desc.linktype == LINK_PLIP)
-                 fprintf(fd, "\nPLIP address: %s", ptmp->un.desc.ascaddr);
--            else if (ptmp->un.desc.linktype == LINK_FDDI)
--                fprintf(fd, "\nFDDI address: %s", ptmp->un.desc.ascaddr);
- 
-             if (ptmp->un.desc.withdesc)
-                 fprintf(fd, " (%s)", ptmp->un.desc.desc);

+ 0 - 22
package/iptraf/patches/patch-src_options_c

@@ -1,22 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/options.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/options.c	2008-10-09 17:34:11.000000000 +0200
-@@ -68,8 +68,6 @@ void makeoptionmenu(struct MENU *menu)
-     tx_additem(menu, NULL, NULL);
-     tx_additem(menu, " ^E^thernet/PLIP host descriptions...",
-                "Manages descriptions for Ethernet and PLIP addresses");
--    tx_additem(menu, " ^F^DDI/Token Ring host descriptions...",
--               "Manages descriptions for FDDI and FDDI addresses");
-     tx_additem(menu, NULL, NULL);
-     tx_additem(menu, " E^x^it configuration", "Returns to main menu");
- }
-@@ -371,9 +369,6 @@ void setoptions(struct OPTIONS *options,
-         case 14:
-             ethdescmgr(LINK_ETHERNET);
-             break;
--        case 15:
--            ethdescmgr(LINK_FDDI);
--            break;
-         }
- 
-         indicatesetting(row, options, statwin);

+ 0 - 37
package/iptraf/patches/patch-src_othptab_c

@@ -1,37 +0,0 @@
---- iptraf-3.0.1.orig/src/othptab.c	2007-09-25 11:47:35.000000000 +0200
-+++ iptraf-3.0.1/src/othptab.c	2013-03-04 11:39:50.000000000 +0100
-@@ -20,7 +20,6 @@ details.
- #include <asm/types.h>
- #include <sys/socket.h>
- #include <linux/if_ether.h>
--#include <linux/if_tr.h>
- #include <linux/netdevice.h>
- #include <linux/if_fddi.h>
- #include <winops.h>
-@@ -142,16 +141,6 @@ struct othptabent *add_othp_entry(struct
-                         new_entry->smacaddr);
-             convmacaddr(((struct ethhdr *) packet)->h_dest,
-                         new_entry->dmacaddr);
--        } else if (linkproto == LINK_FDDI) {
--            convmacaddr(((struct fddihdr *) packet)->saddr,
--                        new_entry->smacaddr);
--            convmacaddr(((struct fddihdr *) packet)->daddr,
--                        new_entry->dmacaddr);
--        } else if (linkproto == LINK_TR) {
--            convmacaddr(((struct trh_hdr *) packet)->saddr,
--                        new_entry->smacaddr);
--            convmacaddr(((struct trh_hdr *) packet)->daddr,
--                        new_entry->dmacaddr);
-         }
-     }
- 
-@@ -376,8 +365,7 @@ void printothpentry(struct othptable *ta
-         strcat(msgstring, scratchpad);
- 
-         if ((entry->linkproto == LINK_ETHERNET) ||
--            (entry->linkproto == LINK_PLIP) ||
--            (entry->linkproto == LINK_FDDI)) {
-+            (entry->linkproto == LINK_PLIP)) {
-             sprintf(scratchpad, " from %s to %s on %s",
-                     entry->smacaddr, entry->dmacaddr, entry->iface);
- 

+ 0 - 87
package/iptraf/patches/patch-src_packet_c

@@ -1,87 +0,0 @@
---- iptraf-3.0.1.orig/src/packet.c	2007-09-25 11:21:18.000000000 +0200
-+++ iptraf-3.0.1/src/packet.c	2024-02-25 18:13:41.165645150 +0100
-@@ -36,8 +36,6 @@ details.
- #include <linux/if_ether.h>
- #include <linux/netdevice.h>
- #include <linux/if_fddi.h>
--#include <linux/if_tr.h>
--#include <linux/isdn.h>
- #include <linux/sockios.h>
- #include <msgboxes.h>
- #include "deskman.h"
-@@ -107,21 +105,7 @@ unsigned short getlinktype(unsigned shor
-             result = LINK_ETHERNET;
-         else if (strncmp(ifname, "tap", 3) == 0)
-             result = LINK_ETHERNET;
--        else if ((strncmp(ifname, "isdn", 4) == 0) && (isdn_fd != -1)) {
--            isdnent = isdn_table_lookup(isdnlist, ifname, isdn_fd);
--
--            switch (isdnent->encap) {
--            case ISDN_NET_ENCAP_RAWIP:
--                result = LINK_ISDN_RAWIP;
--                break;
--            case ISDN_NET_ENCAP_CISCOHDLC:
--                result = LINK_ISDN_CISCOHDLC;
--                break;
--            default:
--                result = LINK_INVALID;
--                break;
--            }
--        } else if (accept_unsupported_interfaces)
-+        else if (accept_unsupported_interfaces)
-             result = LINK_ETHERNET;
-         break;
-     case ARPHRD_LOOPBACK:
-@@ -136,9 +120,6 @@ unsigned short getlinktype(unsigned shor
-     case ARPHRD_PPP:
-         result = LINK_PPP;
-         break;
--    case ARPHRD_FDDI:
--        result = LINK_FDDI;
--        break;
-     case ARPHRD_IEEE802:
-     case ARPHRD_IEEE802_TR:
-         result = LINK_TR;
-@@ -194,36 +175,6 @@ void adjustpacket(char *tpacket, unsigne
-         *packet = tpacket + 4;
-         *readlen -= 4;
-         break;
--    case LINK_FDDI:
--        *packet = tpacket + sizeof(struct fddihdr);
--        *readlen -= sizeof(struct fddihdr);
--
--        /*
--         * Move IP data into an aligned buffer.  96 bytes should be sufficient
--         * for IP and TCP headers with reasonable numbers of options and some
--         * data.
--         */
--
--        memmove(aligned_buf, *packet, min(SNAPSHOT_LEN, *readlen));
--        *packet = aligned_buf;
--        break;
--    case LINK_TR:
--        /*
--         * Token Ring patch supplied by Tomas Dvorak 
--         */
--
--        /*
--         * Get the start of the IP packet from the Token Ring frame.
--         */
--        dataoffset = get_tr_ip_offset(tpacket);
--        *packet = tpacket + dataoffset;
--        *readlen -= dataoffset;
--        /*
--         * Move IP datagram into an aligned buffer.
--         */
--        memmove(aligned_buf, *packet, min(SNAPSHOT_LEN, *readlen));
--        *packet = aligned_buf;
--        break;
-     case LINK_IPIP:
-         *packet = tpacket;
-         break;
-@@ -463,5 +414,4 @@ void pkt_cleanup(void)
-     close(isdnfd);
-     isdnfd = -1;
-     destroyfraglist();
--    destroy_isdn_table(&isdntable);
- }

+ 0 - 22
package/iptraf/patches/patch-src_promisc_c

@@ -1,22 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/promisc.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/promisc.c	2008-10-09 17:34:11.000000000 +0200
-@@ -81,8 +81,8 @@ void init_promisc_list(struct promisc_st
-              */
- 
-             if ((strncmp(buf, "eth", 3) == 0) ||
--                (strncmp(buf, "fddi", 4) == 0) ||
-                 (strncmp(buf, "tr", 2) == 0) ||
-+		(strncmp(buf, "vlan", 4) == 0) ||
-                 (strncmp(ptmp->params.ifname, "wvlan", 4) == 0) ||
-                 (strncmp(ptmp->params.ifname, "lec", 3) == 0) ||
-                 (accept_unsupported_interfaces)) {
-@@ -195,7 +195,7 @@ void srpromisc(int mode, struct promisc_
- 
-     while (ptmp != NULL) {
-         if (((strncmp(ptmp->params.ifname, "eth", 3) == 0) ||
--             (strncmp(ptmp->params.ifname, "fddi", 4) == 0) ||
-+             (strncmp(ptmp->params.ifname, "vlan", 4) == 0) ||
-              (strncmp(ptmp->params.ifname, "tr", 2) == 0) ||
-              (strncmp(ptmp->params.ifname, "wvlan", 4) == 0) ||
-              (strncmp(ptmp->params.ifname, "lec", 3) == 0)) &&

+ 0 - 12
package/iptraf/patches/patch-src_revname_c

@@ -1,12 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.1.orig/src/revname.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.1/src/revname.c	2013-03-04 11:35:39.000000000 +0100
-@@ -164,7 +164,7 @@ int revname(int *lookup, struct in_addr
-     struct timeval tv;
-     int sstat = 0;
- 
--    bzero(target, 45);
-+    memset(target, 0, 45);
-     if (*lookup) {
-         if (rvnfd > 0) {
-             su.sun_family = AF_UNIX;

+ 0 - 39
package/iptraf/patches/patch-src_rvnamed_c

@@ -1,39 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/rvnamed.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/rvnamed.c	2009-05-21 23:03:43.000000000 +0200
-@@ -99,7 +99,7 @@ void process_rvn_packet(struct rvn *rvnp
-     if (he == NULL)
-         strcpy(rvnpacket->fqdn, inet_ntoa(rvnpacket->saddr));
-     else {
--        bzero(rvnpacket->fqdn, 45);
-+        memset(rvnpacket->fqdn, 0, 45);
-         strncpy(rvnpacket->fqdn, he->h_name, 44);
-     }
- 
-@@ -306,7 +306,7 @@ int main(void)
-                 }
- 
-                 if (hi == lastfree) {   /* Address not in cache */
--                    bzero(&(hostlist[hi]), sizeof(struct hosts));
-+                    memset(&(hostlist[hi]), 0, sizeof(struct hosts));
-                     hi = hostindex;
-                     hostindex++;
-                     if (hostindex == NUM_CACHE_ENTRIES)
-@@ -359,7 +359,7 @@ int main(void)
-                         name_resolved(&rvnpacket, hostlist, lastfree);
-                     if (readyidx >= 0) {
-                         rvnpacket.type = RVN_REPLY;
--                        bzero(rvnpacket.fqdn, 45);
-+                        memset(rvnpacket.fqdn, 0, 45);
-                         strncpy(rvnpacket.fqdn, hostlist[readyidx].fqdn,
-                                 44);
-                         rvnpacket.ready = RESOLVED;
-@@ -454,7 +454,7 @@ int main(void)
-                             }
-                         }
-                         rvnpacket.type = RVN_REPLY;
--                        bzero(rvnpacket.fqdn, 45);
-+                        memset(rvnpacket.fqdn, 0, 45);
-                         strcpy(rvnpacket.fqdn, inet_ntoa(rvnpacket.saddr));
-                         rvnpacket.ready = RESOLVING;
- 

+ 0 - 16
package/iptraf/patches/patch-src_rvnamed_h

@@ -1,16 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/rvnamed.h	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/rvnamed.h	2008-10-09 17:34:11.000000000 +0200
-@@ -1,9 +1,9 @@
- #include <netinet/in.h>
- #include <arpa/inet.h>
- 
--#define CHILDSOCKNAME "/dev/rvndcldcomsk"
--#define PARENTSOCKNAME "/dev/rvndpntcomsk"
--#define IPTSOCKNAME "/dev/rvndiptcomsk"
-+#define CHILDSOCKNAME "/tmp/rvndcldcomsk"
-+#define PARENTSOCKNAME "/tmp/rvndpntcomsk"
-+#define IPTSOCKNAME "/tmp/rvndiptcomsk"
- 
- #define SOCKET_PREFIX	"isock"
- 

+ 0 - 12
package/iptraf/patches/patch-src_serv_c

@@ -1,12 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/serv.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/serv.c	2009-05-21 23:04:11.000000000 +0200
-@@ -713,7 +713,7 @@ void update_serv_rates(struct portlist *
-     mvwprintw(win, 0, 46, "%10.2f", outrate);
-     mvwprintw(win, 0, 61, "%10.2f", totalrate);
- 
--    bzero(&(list->barptr->spans), sizeof(struct serv_spans));
-+    memset(&(list->barptr->spans), 0, sizeof(struct serv_spans));
-     list->barptr->starttime = time(NULL);
-     *cleared = 0;
- }

+ 0 - 12
package/iptraf/patches/patch-src_servname_c

@@ -1,12 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/src/servname.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.0/src/servname.c	2009-05-21 23:04:24.000000000 +0200
-@@ -27,7 +27,7 @@ void servlook(int servnames, unsigned in
- {
-     static struct servent *sve;
- 
--    bzero(target, maxlen + 1);
-+    memset(target, 0, maxlen + 1);
- 
-     if (servnames) {
-         if (protocol == IPPROTO_TCP)

+ 0 - 47
package/iptraf/patches/patch-src_tcptable_c

@@ -1,47 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.1.orig/src/tcptable.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.1/src/tcptable.c	2013-03-04 11:38:22.000000000 +0100
-@@ -17,6 +17,7 @@ details.
-    
- ***/
- 
-+#include <stdlib.h>
- #include <winops.h>
- #include "options.h"
- #include "tcptable.h"
-@@ -143,7 +144,7 @@ int add_tcp_hash_entry(struct tcptable *
-                   entry->daddr.s_addr, entry->dport, entry->ifname);
- 
-     ptmp = malloc(sizeof(struct tcp_hashentry));
--    bzero(ptmp, sizeof(struct tcp_hashentry));
-+    memset(ptmp, 0, sizeof(struct tcp_hashentry));
- 
-     if (ptmp == NULL)
-         return 1;
-@@ -337,8 +338,8 @@ struct tcptableent *addentry(struct tcpt
-      * Zero out MAC address fields
-      */
- 
--    bzero(new_entry->smacaddr, 15);
--    bzero(new_entry->oth_connection->smacaddr, 15);
-+    memset(new_entry->smacaddr, 0, 15);
-+    memset(new_entry->oth_connection->smacaddr, 0, 15);
- 
-     /*
-      * Set raw port numbers
-@@ -596,14 +597,10 @@ void updateentry(struct tcptable *table,
-     tableentry->spanbr += bcount;
- 
-     if (opts->mac) {
--        bzero(newmacaddr, 15);
-+        memset(newmacaddr, 0, 15);
- 
-         if ((linkproto == LINK_ETHERNET) || (linkproto == LINK_PLIP)) {
-             convmacaddr(((struct ethhdr *) packet)->h_source, newmacaddr);
--        } else if (linkproto == LINK_FDDI) {
--            convmacaddr(((struct fddihdr *) packet)->saddr, newmacaddr);
--        } else if (linkproto == LINK_TR) {
--            convmacaddr(((struct trh_hdr *) packet)->saddr, newmacaddr);
-         }
- 
-         if (tableentry->smacaddr[0] != '\0') {

+ 0 - 10
package/iptraf/patches/patch-src_tcptable_h

@@ -1,10 +0,0 @@
---- iptraf-3.0.1.orig/src/tcptable.h	2007-09-25 11:46:03.000000000 +0200
-+++ iptraf-3.0.1/src/tcptable.h	2013-03-04 11:35:47.000000000 +0100
-@@ -24,7 +24,6 @@
- #include <linux/if_ether.h>
- #include <linux/netdevice.h>
- #include <linux/if_fddi.h>
--#include <linux/if_tr.h>
- // #include <net/if.h>
- #include <netinet/ip.h>
- #include <netinet/udp.h>

+ 0 - 13
package/iptraf/patches/patch-src_tr_c

@@ -1,13 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.1.orig/src/tr.c	2005-09-13 08:42:54.000000000 +0200
-+++ iptraf-3.0.1/src/tr.c	2013-03-04 11:41:40.000000000 +0100
-@@ -6,8 +6,7 @@
-  * Copyright (c) Gerard Paul Java 2002
-  */
- 
--#include <asm/types.h>
--#include <linux/if_tr.h>
-+#include <sys/types.h>
- #include <netinet/in.h>
- 
- unsigned int get_tr_ip_offset(unsigned char *pkt)

+ 0 - 25
package/iptraf/patches/patch-support_Makefile

@@ -1,25 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/support/Makefile	2002-07-19 18:31:48.000000000 +0200
-+++ iptraf-3.0.0/support/Makefile	2011-01-21 13:47:38.508658394 +0100
-@@ -1,18 +1,13 @@
--INCLUDEDIR		= -I/usr/include/ncurses
--
- OBJS			= input.o menurt.o listbox.o winops.o labels.o \
- 				msgboxes.o txbox.o
- 
--all: libtextbox.a
--
- libtextbox.a: $(OBJS)
- 	rm -rf libtextbox.a
--	ar cq libtextbox.a $(OBJS)
--	ranlib libtextbox.a
--#	gcc -shared -o libtextbox.so $(OBJS)
-+	$(AR) cq libtextbox.a $(OBJS)
-+	$(RANLIB) libtextbox.a
- 
- %.o: %.c *.h
--	gcc -O2 -g -Wall -fPIC $(INCLUDEDIR) -c -o $*.o $<
-+	$(CC) $(CPPFLAGS) $(CFLAGS) -fPIC -c -o $*.o $<
- 
- clean:
- 	rm -rf *.o *~ libtextbox.a libtextbox.so

+ 0 - 12
package/iptraf/patches/patch-support_input_c

@@ -1,12 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.0.orig/support/input.c	2002-12-26 03:11:22.000000000 +0100
-+++ iptraf-3.0.0/support/input.c	2009-05-21 23:05:37.000000000 +0200
-@@ -55,7 +55,7 @@ void tx_addfield(struct FIELDLIST *list,
-     newfield->len = len;
-     newfield->tlen = strlen(initstr);
-     newfield->buf = malloc(len + 1);
--    bzero(newfield->buf, len + 1);
-+    memset(newfield->buf, 0, len + 1);
-     strncpy(newfield->buf, initstr, len);
- 
-     if (newfield->tlen > (len))

+ 0 - 21
package/iptraf/patches/patch-support_listbox_c

@@ -1,21 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- iptraf-3.0.1.orig/support/listbox.c	2002-07-19 18:48:11.000000000 +0200
-+++ iptraf-3.0.1/support/listbox.c	2013-03-04 11:35:39.000000000 +0100
-@@ -19,7 +19,7 @@ void tx_init_listbox(struct scroll_list
-                       int mainattr, int borderattr, int selectattr,
-                       int keyattr)
- {
--    bzero(list, sizeof(struct scroll_list));
-+    memset(list, 0, sizeof(struct scroll_list));
-     list->borderwin = newwin(height, width, starty, startx);
-     list->borderpanel = new_panel(list->borderwin);
-     wattrset(list->borderwin, borderattr);
-@@ -50,7 +50,7 @@ void tx_add_list_entry(struct scroll_lis
-     struct textlisttype *ptmp;
-     
-     ptmp = malloc(sizeof(struct textlisttype));
--    bzero(ptmp, sizeof(struct textlisttype));
-+    memset(ptmp, 0, sizeof(struct textlisttype));
-         
-     strncpy(ptmp->text, text, MAX_TEXT_LENGTH);
-     ptmp->nodeptr = node;

+ 27 - 0
package/jack2/patches/patch-waf

@@ -0,0 +1,27 @@
+--- jack2-1.9.22.orig/waf	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waf	2026-05-14 18:36:34.596872137 +0200
+@@ -1,4 +1,4 @@
+-#!/usr/bin/python3
++#!/usr/bin/env python
+ # encoding: latin-1
+ # Thomas Nagy, 2005-2018
+ #
+@@ -32,7 +32,7 @@ POSSIBILITY OF SUCH DAMAGE.
+ 
+ import os, sys, inspect
+ 
+-VERSION="2.0.12"
++VERSION="2.0.26"
+ REVISION="x"
+ GIT="x"
+ INSTALL="x"
+@@ -142,6 +142,9 @@ def find_lib():
+ 	if name.endswith('waf-light'):
+ 		w = test(base)
+ 		if w: return w
++		for dir in sys.path:
++			if test(dir):
++				return dir
+ 		err('waf-light requires waflib -> export WAFDIR=/folder')
+ 
+ 	dirname = '%s-%s-%s' % (WAF, VERSION, REVISION)

+ 125 - 0
package/jack2/patches/patch-waflib_Build_py

@@ -0,0 +1,125 @@
+--- jack2-1.9.22.orig/waflib/Build.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Build.py	2026-05-14 18:36:34.596872137 +0200
+@@ -104,7 +104,7 @@ class BuildContext(Context.Context):
+ 		"""Amount of jobs to run in parallel"""
+ 
+ 		self.targets = Options.options.targets
+-		"""List of targets to build (default: \*)"""
++		"""List of targets to build (default: \\*)"""
+ 
+ 		self.keep = Options.options.keep
+ 		"""Whether the build should continue past errors"""
+@@ -753,10 +753,12 @@ class BuildContext(Context.Context):
+ 		else:
+ 			ln = self.launch_node()
+ 			if ln.is_child_of(self.bldnode):
+-				Logs.warn('Building from the build directory, forcing --targets=*')
++				if Logs.verbose > 1:
++					Logs.warn('Building from the build directory, forcing --targets=*')
+ 				ln = self.srcnode
+ 			elif not ln.is_child_of(self.srcnode):
+-				Logs.warn('CWD %s is not under %s, forcing --targets=* (run distclean?)', ln.abspath(), self.srcnode.abspath())
++				if Logs.verbose > 1:
++					Logs.warn('CWD %s is not under %s, forcing --targets=* (run distclean?)', ln.abspath(), self.srcnode.abspath())
+ 				ln = self.srcnode
+ 
+ 			def is_post(tg, ln):
+@@ -1054,7 +1056,7 @@ class inst(Task.Task):
+ 	def get_install_path(self, destdir=True):
+ 		"""
+ 		Returns the destination path where files will be installed, pre-pending `destdir`.
+-		
++
+ 		Relative paths will be interpreted relative to `PREFIX` if no `destdir` is given.
+ 
+ 		:rtype: string
+@@ -1062,11 +1064,11 @@ class inst(Task.Task):
+ 		if isinstance(self.install_to, Node.Node):
+ 			dest = self.install_to.abspath()
+ 		else:
+-			dest = Utils.subst_vars(self.install_to, self.env)
++			dest = os.path.normpath(Utils.subst_vars(self.install_to, self.env))
+ 		if not os.path.isabs(dest):
+-		    dest = os.path.join(self.env.PREFIX, dest)
++			dest = os.path.join(self.env.PREFIX, dest)
+ 		if destdir and Options.options.destdir:
+-			dest = os.path.join(Options.options.destdir, os.path.splitdrive(dest)[1].lstrip(os.sep))
++			dest = Options.options.destdir.rstrip(os.sep) + os.sep + os.path.splitdrive(dest)[1].lstrip(os.sep)
+ 		return dest
+ 
+ 	def copy_fun(self, src, tgt):
+@@ -1160,11 +1162,19 @@ class inst(Task.Task):
+ 				# same size and identical timestamps -> make no copy
+ 				if st1.st_mtime + 2 >= st2.st_mtime and st1.st_size == st2.st_size:
+ 					if not self.generator.bld.progress_bar:
+-						Logs.info('- install %s (from %s)', tgt, lbl)
++
++						c1 = Logs.colors.NORMAL
++						c2 = Logs.colors.BLUE
++
++						Logs.info('%s- install %s%s%s (from %s)', c1, c2, tgt, c1, lbl)
+ 					return False
+ 
+ 		if not self.generator.bld.progress_bar:
+-			Logs.info('+ install %s (from %s)', tgt, lbl)
++
++			c1 = Logs.colors.NORMAL
++			c2 = Logs.colors.BLUE
++
++			Logs.info('%s+ install %s%s%s (from %s)', c1, c2, tgt, c1, lbl)
+ 
+ 		# Give best attempt at making destination overwritable,
+ 		# like the 'install' utility used by 'make install' does.
+@@ -1221,14 +1231,18 @@ class inst(Task.Task):
+ 		"""
+ 		if os.path.islink(tgt) and os.readlink(tgt) == src:
+ 			if not self.generator.bld.progress_bar:
+-				Logs.info('- symlink %s (to %s)', tgt, src)
++				c1 = Logs.colors.NORMAL
++				c2 = Logs.colors.BLUE
++				Logs.info('%s- symlink %s%s%s (to %s)', c1, c2, tgt, c1, src)
+ 		else:
+ 			try:
+ 				os.remove(tgt)
+ 			except OSError:
+ 				pass
+ 			if not self.generator.bld.progress_bar:
+-				Logs.info('+ symlink %s (to %s)', tgt, src)
++				c1 = Logs.colors.NORMAL
++				c2 = Logs.colors.BLUE
++				Logs.info('%s+ symlink %s%s%s (to %s)', c1, c2, tgt, c1, src)
+ 			os.symlink(src, tgt)
+ 			self.fix_perms(tgt)
+ 
+@@ -1237,7 +1251,9 @@ class inst(Task.Task):
+ 		See :py:meth:`waflib.Build.inst.do_install`
+ 		"""
+ 		if not self.generator.bld.progress_bar:
+-			Logs.info('- remove %s', tgt)
++			c1 = Logs.colors.NORMAL
++			c2 = Logs.colors.BLUE
++			Logs.info('%s- remove %s%s%s', c1, c2, tgt, c1)
+ 
+ 		#self.uninstall.append(tgt)
+ 		try:
+@@ -1257,7 +1273,9 @@ class inst(Task.Task):
+ 		"""
+ 		try:
+ 			if not self.generator.bld.progress_bar:
+-				Logs.info('- remove %s', tgt)
++				c1 = Logs.colors.NORMAL
++				c2 = Logs.colors.BLUE
++				Logs.info('%s- remove %s%s%s', c1, c2, tgt, c1)
+ 			os.remove(tgt)
+ 		except OSError:
+ 			pass
+@@ -1318,7 +1336,8 @@ class CleanContext(BuildContext):
+ 			lst = []
+ 			for env in self.all_envs.values():
+ 				lst.extend(self.root.find_or_declare(f) for f in env[CFG_FILES])
+-			for n in self.bldnode.ant_glob('**/*', excl='.lock* *conf_check_*/** config.log c4che/*', quiet=True):
++			excluded_dirs = '.lock* *conf_check_*/** config.log %s/*' % CACHE_DIR
++			for n in self.bldnode.ant_glob('**/*', excl=excluded_dirs, quiet=True):
+ 				if n in lst:
+ 					continue
+ 				n.delete()

+ 11 - 0
package/jack2/patches/patch-waflib_ConfigSet_py

@@ -0,0 +1,11 @@
+--- jack2-1.9.22.orig/waflib/ConfigSet.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/ConfigSet.py	2026-05-14 18:36:34.596872137 +0200
+@@ -11,7 +11,7 @@ The values put in :py:class:`ConfigSet`
+ 
+ import copy, re, os
+ from waflib import Logs, Utils
+-re_imp = re.compile('^(#)*?([^#=]*?)\ =\ (.*?)$', re.M)
++re_imp = re.compile(r'^(#)*?([^#=]*?)\ =\ (.*?)$', re.M)
+ 
+ class ConfigSet(object):
+ 	"""

+ 108 - 0
package/jack2/patches/patch-waflib_Configure_py

@@ -0,0 +1,108 @@
+--- jack2-1.9.22.orig/waflib/Configure.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Configure.py	2026-05-14 18:36:34.596872137 +0200
+@@ -125,7 +125,7 @@ class ConfigurationContext(Context.Conte
+ 		self.bldnode.mkdir()
+ 
+ 		if not os.path.isdir(self.bldnode.abspath()):
+-			conf.fatal('Could not create the build directory %s' % self.bldnode.abspath())
++			self.fatal('Could not create the build directory %s' % self.bldnode.abspath())
+ 
+ 	def execute(self):
+ 		"""
+@@ -180,6 +180,7 @@ class ConfigurationContext(Context.Conte
+ 		env.hash = self.hash
+ 		env.files = self.files
+ 		env.environ = dict(self.environ)
++		env.launch_dir = Context.launch_dir
+ 
+ 		if not (self.env.NO_LOCK_IN_RUN or env.environ.get('NO_LOCK_IN_RUN') or getattr(Options.options, 'no_lock_in_run')):
+ 			env.store(os.path.join(Context.run_dir, Options.lockfile))
+@@ -438,7 +439,7 @@ def find_program(self, filename, **kw):
+ 
+ 	var = kw.get('var', '')
+ 	if not var:
+-		var = re.sub(r'[-.]', '_', filename[0].upper())
++		var = re.sub(r'\W', '_', filename[0].upper())
+ 
+ 	path_list = kw.get('path_list', '')
+ 	if path_list:
+@@ -507,23 +508,27 @@ def find_binary(self, filenames, exts, p
+ @conf
+ def run_build(self, *k, **kw):
+ 	"""
+-	Create a temporary build context to execute a build. A reference to that build
+-	context is kept on self.test_bld for debugging purposes, and you should not rely
+-	on it too much (read the note on the cache below).
+-	The parameters given in the arguments to this function are passed as arguments for
+-	a single task generator created in the build. Only three parameters are obligatory:
++	Create a temporary build context to execute a build. A temporary reference to that build
++	context is kept on self.test_bld for debugging purposes.
++	The arguments to this function are passed to a single task generator for that build.
++	Only three parameters are mandatory:
+ 
+ 	:param features: features to pass to a task generator created in the build
+ 	:type features: list of string
+ 	:param compile_filename: file to create for the compilation (default: *test.c*)
+ 	:type compile_filename: string
+-	:param code: code to write in the filename to compile
++	:param code: input file contents
+ 	:type code: string
+ 
+-	Though this function returns *0* by default, the build may set an attribute named *retval* on the
++	Though this function returns *0* by default, the build may bind attribute named *retval* on the
+ 	build context object to return a particular value. See :py:func:`waflib.Tools.c_config.test_exec_fun` for example.
+ 
+-	This function also provides a limited cache. To use it, provide the following option::
++	The temporary builds creates a temporary folder; the name of that folder is calculated
++	by hashing input arguments to this function, with the exception of :py:class:`waflib.ConfigSet.ConfigSet`
++	objects which are used for both reading and writing values.
++
++	This function also features a cache which is disabled by default; that cache relies
++	on the hash value calculated as indicated above::
+ 
+ 		def options(opt):
+ 			opt.add_option('--confcache', dest='confcache', default=0,
+@@ -534,10 +539,24 @@ def run_build(self, *k, **kw):
+ 		$ waf configure --confcache
+ 
+ 	"""
+-	lst = [str(v) for (p, v) in kw.items() if p != 'env']
+-	h = Utils.h_list(lst)
++	buf = []
++	for key in sorted(kw.keys()):
++		v = kw[key]
++		if isinstance(v, ConfigSet.ConfigSet):
++			# values are being written to, so they are excluded from contributing to the hash
++			continue
++		elif hasattr(v, '__call__'):
++			buf.append(Utils.h_fun(v))
++		else:
++			buf.append(str(v))
++	h = Utils.h_list(buf)
+ 	dir = self.bldnode.abspath() + os.sep + (not Utils.is_win32 and '.' or '') + 'conf_check_' + Utils.to_hex(h)
+ 
++	cachemode = kw.get('confcache', getattr(Options.options, 'confcache', None))
++
++	if not cachemode and os.path.exists(dir):
++		shutil.rmtree(dir)
++
+ 	try:
+ 		os.makedirs(dir)
+ 	except OSError:
+@@ -548,7 +567,6 @@ def run_build(self, *k, **kw):
+ 	except OSError:
+ 		self.fatal('cannot use the configuration test folder %r' % dir)
+ 
+-	cachemode = getattr(Options.options, 'confcache', None)
+ 	if cachemode == 1:
+ 		try:
+ 			proj = ConfigSet.ConfigSet(os.path.join(dir, 'cache_run_build'))
+@@ -588,7 +606,7 @@ def run_build(self, *k, **kw):
+ 		else:
+ 			ret = getattr(bld, 'retval', 0)
+ 	finally:
+-		if cachemode == 1:
++		if cachemode:
+ 			# cache the results each time
+ 			proj = ConfigSet.ConfigSet()
+ 			proj['cache_run_build'] = ret

+ 64 - 0
package/jack2/patches/patch-waflib_Context_py

@@ -0,0 +1,64 @@
+--- jack2-1.9.22.orig/waflib/Context.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Context.py	2026-05-14 18:36:34.596872137 +0200
+@@ -6,20 +6,30 @@
+ Classes and functions enabling the command system
+ """
+ 
+-import os, re, imp, sys
++import os, re, sys
+ from waflib import Utils, Errors, Logs
+ import waflib.Node
+ 
++if sys.hexversion > 0x3040000:
++	import types
++	class imp(object):
++		new_module = lambda x: types.ModuleType(x)
++else:
++	import imp
++
+ # the following 3 constants are updated on each new release (do not touch)
+-HEXVERSION=0x2000c00
++HEXVERSION=0x2001a00
+ """Constant updated on new releases"""
+ 
+-WAFVERSION="2.0.12"
++WAFVERSION="2.0.26"
+ """Constant updated on new releases"""
+ 
+-WAFREVISION="54841218840ffa34fddf834680a5a17db69caa12"
++WAFREVISION="0fb985ce1932c6f3e7533f435e4ee209d673776e"
+ """Git revision when the waf version is updated"""
+ 
++WAFNAME="waf"
++"""Application name displayed on --help"""
++
+ ABI = 20
+ """Version of the build data cache file format (used in :py:const:`waflib.Context.DBFILE`)"""
+ 
+@@ -134,7 +144,7 @@ class Context(ctx):
+ 	:type fun: string
+ 
+ 	.. inheritance-diagram:: waflib.Context.Context waflib.Build.BuildContext waflib.Build.InstallContext waflib.Build.UninstallContext waflib.Build.StepContext waflib.Build.ListContext waflib.Configure.ConfigurationContext waflib.Scripting.Dist waflib.Scripting.DistCheck waflib.Build.CleanContext
+-
++	   :top-classes: waflib.Context.Context
+ 	"""
+ 
+ 	errors = Errors
+@@ -613,7 +623,7 @@ class Context(ctx):
+ 		is typically called once for a programming language group, see for
+ 		example :py:mod:`waflib.Tools.compiler_c`
+ 
+-		:param var: glob expression, for example 'cxx\_\*.py'
++		:param var: glob expression, for example 'cxx\\_\\*.py'
+ 		:type var: string
+ 		:param ban: list of exact file names to exclude
+ 		:type ban: list of string
+@@ -678,7 +688,7 @@ def load_module(path, encoding=None):
+ 
+ def load_tool(tool, tooldir=None, ctx=None, with_sys_path=True):
+ 	"""
+-	Importx a Waf tool as a python module, and stores it in the dict :py:const:`waflib.Context.Context.tools`
++	Imports a Waf tool as a python module, and stores it in the dict :py:const:`waflib.Context.Context.tools`
+ 
+ 	:type  tool: string
+ 	:param tool: Name of the tool

+ 26 - 0
package/jack2/patches/patch-waflib_Logs_py

@@ -0,0 +1,26 @@
+--- jack2-1.9.22.orig/waflib/Logs.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Logs.py	2026-05-14 18:36:34.596872137 +0200
+@@ -237,7 +237,10 @@ class formatter(logging.Formatter):
+ 		if rec.levelno >= logging.INFO:
+ 			# the goal of this is to format without the leading "Logs, hour" prefix
+ 			if rec.args:
+-				return msg % rec.args
++				try:
++					return msg % rec.args
++				except UnicodeDecodeError:
++					return msg.encode('utf-8') % rec.args
+ 			return msg
+ 
+ 		rec.msg = msg
+@@ -276,9 +279,9 @@ def error(*k, **kw):
+ 
+ def warn(*k, **kw):
+ 	"""
+-	Wraps logging.warn
++	Wraps logging.warning
+ 	"""
+-	log.warn(*k, **kw)
++	log.warning(*k, **kw)
+ 
+ def info(*k, **kw):
+ 	"""

+ 19 - 0
package/jack2/patches/patch-waflib_Node_py

@@ -0,0 +1,19 @@
+--- jack2-1.9.22.orig/waflib/Node.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Node.py	2026-05-14 18:36:34.596872137 +0200
+@@ -73,7 +73,7 @@ def ant_matcher(s, ignorecase):
+ 			if k == '**':
+ 				accu.append(k)
+ 			else:
+-				k = k.replace('.', '[.]').replace('*','.*').replace('?', '.').replace('+', '\\+')
++				k = k.replace('.', '[.]').replace('*', '.*').replace('?', '.').replace('+', '\\+')
+ 				k = '^%s$' % k
+ 				try:
+ 					exp = re.compile(k, flags=reflags)
+@@ -595,7 +595,6 @@ class Node(object):
+ 		:rtype: iterator
+ 		"""
+ 		dircont = self.listdir()
+-		dircont.sort()
+ 
+ 		try:
+ 			lst = set(self.children.keys())

+ 70 - 0
package/jack2/patches/patch-waflib_Options_py

@@ -0,0 +1,70 @@
+--- jack2-1.9.22.orig/waflib/Options.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Options.py	2026-05-14 18:36:34.596872137 +0200
+@@ -44,7 +44,7 @@ class opt_parser(optparse.OptionParser):
+ 	"""
+ 	def __init__(self, ctx, allow_unknown=False):
+ 		optparse.OptionParser.__init__(self, conflict_handler='resolve', add_help_option=False,
+-			version='waf %s (%s)' % (Context.WAFVERSION, Context.WAFREVISION))
++			version='%s %s (%s)' % (Context.WAFNAME, Context.WAFVERSION, Context.WAFREVISION))
+ 		self.formatter.width = Logs.get_term_cols()
+ 		self.ctx = ctx
+ 		self.allow_unknown = allow_unknown
+@@ -62,6 +62,21 @@ class opt_parser(optparse.OptionParser):
+ 				else:
+ 					self.error(str(e))
+ 
++	def _process_long_opt(self, rargs, values):
++		# --custom-option=-ftxyz is interpreted as -f -t... see #2280
++		if self.allow_unknown:
++			back = [] + rargs
++			try:
++				optparse.OptionParser._process_long_opt(self, rargs, values)
++			except optparse.BadOptionError:
++				while rargs:
++					rargs.pop()
++				rargs.extend(back)
++				rargs.pop(0)
++				raise
++		else:
++			optparse.OptionParser._process_long_opt(self, rargs, values)
++
+ 	def print_usage(self, file=None):
+ 		return self.print_help(file)
+ 
+@@ -96,11 +111,11 @@ class opt_parser(optparse.OptionParser):
+ 		lst.sort()
+ 		ret = '\n'.join(lst)
+ 
+-		return '''waf [commands] [options]
++		return '''%s [commands] [options]
+ 
+-Main commands (example: ./waf build -j4)
++Main commands (example: ./%s build -j4)
+ %s
+-''' % ret
++''' % (Context.WAFNAME, Context.WAFNAME, ret)
+ 
+ 
+ class OptionsContext(Context.Context):
+@@ -141,9 +156,9 @@ class OptionsContext(Context.Context):
+ 		gr.add_option('-o', '--out', action='store', default='', help='build dir for the project', dest='out')
+ 		gr.add_option('-t', '--top', action='store', default='', help='src dir for the project', dest='top')
+ 
+-		gr.add_option('--no-lock-in-run', action='store_true', default='', help=optparse.SUPPRESS_HELP, dest='no_lock_in_run')
+-		gr.add_option('--no-lock-in-out', action='store_true', default='', help=optparse.SUPPRESS_HELP, dest='no_lock_in_out')
+-		gr.add_option('--no-lock-in-top', action='store_true', default='', help=optparse.SUPPRESS_HELP, dest='no_lock_in_top')
++		gr.add_option('--no-lock-in-run', action='store_true', default=os.environ.get('NO_LOCK_IN_RUN', ''), help=optparse.SUPPRESS_HELP, dest='no_lock_in_run')
++		gr.add_option('--no-lock-in-out', action='store_true', default=os.environ.get('NO_LOCK_IN_OUT', ''), help=optparse.SUPPRESS_HELP, dest='no_lock_in_out')
++		gr.add_option('--no-lock-in-top', action='store_true', default=os.environ.get('NO_LOCK_IN_TOP', ''), help=optparse.SUPPRESS_HELP, dest='no_lock_in_top')
+ 
+ 		default_prefix = getattr(Context.g_module, 'default_prefix', os.environ.get('PREFIX'))
+ 		if not default_prefix:
+@@ -282,6 +297,8 @@ class OptionsContext(Context.Context):
+ 			elif arg != 'options':
+ 				commands.append(arg)
+ 
++		if options.jobs < 1:
++			options.jobs = 1
+ 		for name in 'top out destdir prefix bindir libdir'.split():
+ 			# those paths are usually expanded from Context.launch_dir
+ 			if getattr(options, name, None):

+ 74 - 0
package/jack2/patches/patch-waflib_Runner_py

@@ -0,0 +1,74 @@
+--- jack2-1.9.22.orig/waflib/Runner.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Runner.py	2026-05-14 18:36:34.596872137 +0200
+@@ -37,6 +37,8 @@ class PriorityTasks(object):
+ 		return len(self.lst)
+ 	def __iter__(self):
+ 		return iter(self.lst)
++	def __str__(self):
++		return 'PriorityTasks: [%s]' % '\n  '.join(str(x) for x in self.lst)
+ 	def clear(self):
+ 		self.lst = []
+ 	def append(self, task):
+@@ -69,7 +71,7 @@ class Consumer(Utils.threading.Thread):
+ 		"""Task to execute"""
+ 		self.spawner = spawner
+ 		"""Coordinator object"""
+-		self.setDaemon(1)
++		self.daemon = True
+ 		self.start()
+ 	def run(self):
+ 		"""
+@@ -96,7 +98,7 @@ class Spawner(Utils.threading.Thread):
+ 		""":py:class:`waflib.Runner.Parallel` producer instance"""
+ 		self.sem = Utils.threading.Semaphore(master.numjobs)
+ 		"""Bounded semaphore that prevents spawning more than *n* concurrent consumers"""
+-		self.setDaemon(1)
++		self.daemon = True
+ 		self.start()
+ 	def run(self):
+ 		"""
+@@ -181,10 +183,12 @@ class Parallel(object):
+ 		The reverse dependency graph of dependencies obtained from Task.run_after
+ 		"""
+ 
+-		self.spawner = Spawner(self)
++		self.spawner = None
+ 		"""
+ 		Coordinating daemon thread that spawns thread consumers
+ 		"""
++		if self.numjobs > 1:
++			self.spawner = Spawner(self)
+ 
+ 	def get_next_task(self):
+ 		"""
+@@ -254,6 +258,8 @@ class Parallel(object):
+ 							self.outstanding.append(x)
+ 							break
+ 					else:
++						if self.stop or self.error:
++							break
+ 						raise Errors.WafError('Broken revdeps detected on %r' % self.incomplete)
+ 				else:
+ 					tasks = next(self.biter)
+@@ -331,11 +337,16 @@ class Parallel(object):
+ 
+ 		if hasattr(tsk, 'semaphore'):
+ 			sem = tsk.semaphore
+-			sem.release(tsk)
+-			while sem.waiting and not sem.is_locked():
+-				# take a frozen task, make it ready to run
+-				x = sem.waiting.pop()
+-				self._add_task(x)
++			try:
++				sem.release(tsk)
++			except KeyError:
++				# TODO
++				pass
++			else:
++				while sem.waiting and not sem.is_locked():
++					# take a frozen task, make it ready to run
++					x = sem.waiting.pop()
++					self._add_task(x)
+ 
+ 	def get_out(self):
+ 		"""

+ 84 - 0
package/jack2/patches/patch-waflib_Scripting_py

@@ -0,0 +1,84 @@
+--- jack2-1.9.22.orig/waflib/Scripting.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Scripting.py	2026-05-14 18:36:34.596872137 +0200
+@@ -216,7 +216,10 @@ def parse_options():
+ 	ctx = Context.create_context('options')
+ 	ctx.execute()
+ 	if not Options.commands:
+-		Options.commands.append(default_cmd)
++		if isinstance(default_cmd, list):
++			Options.commands.extend(default_cmd)
++		else:
++			Options.commands.append(default_cmd)
+ 	if Options.options.whelp:
+ 		ctx.parser.print_help()
+ 		sys.exit(0)
+@@ -280,7 +283,7 @@ def distclean_dir(dirname):
+ 			pass
+ 
+ 	try:
+-		shutil.rmtree('c4che')
++		shutil.rmtree(Build.CACHE_DIR)
+ 	except OSError:
+ 		pass
+ 
+@@ -303,7 +306,7 @@ def distclean(ctx):
+ 
+ 	# remove a build folder, if any
+ 	cur = '.'
+-	if ctx.options.no_lock_in_top:
++	if os.environ.get('NO_LOCK_IN_TOP') or ctx.options.no_lock_in_top:
+ 		cur = ctx.options.out
+ 
+ 	try:
+@@ -329,7 +332,12 @@ def distclean(ctx):
+ 		else:
+ 			remove_and_log(env.out_dir, shutil.rmtree)
+ 
+-		for k in (env.out_dir, env.top_dir, env.run_dir):
++		env_dirs = [env.out_dir]
++		if not (os.environ.get('NO_LOCK_IN_TOP') or ctx.options.no_lock_in_top):
++			env_dirs.append(env.top_dir)
++		if not (os.environ.get('NO_LOCK_IN_RUN') or ctx.options.no_lock_in_run):
++			env_dirs.append(env.run_dir)
++		for k in env_dirs:
+ 			p = os.path.join(k, Options.lockfile)
+ 			remove_and_log(p, os.remove)
+ 
+@@ -380,7 +388,11 @@ class Dist(Context.Context):
+ 
+ 			for x in files:
+ 				archive_name = self.get_base_name() + '/' + x.path_from(self.base_path)
+-				zip.write(x.abspath(), archive_name, zipfile.ZIP_DEFLATED)
++				if os.environ.get('SOURCE_DATE_EPOCH'):
++					# TODO: parse that timestamp
++					zip.writestr(zipfile.ZipInfo(archive_name), x.read(), zipfile.ZIP_DEFLATED)
++				else:
++					zip.write(x.abspath(), archive_name, zipfile.ZIP_DEFLATED)
+ 			zip.close()
+ 		else:
+ 			self.fatal('Valid algo types are tar.bz2, tar.gz, tar.xz or zip')
+@@ -417,6 +429,8 @@ class Dist(Context.Context):
+ 		tinfo.gid   = 0
+ 		tinfo.uname = 'root'
+ 		tinfo.gname = 'root'
++		if os.environ.get('SOURCE_DATE_EPOCH'):
++			tinfo.mtime = int(os.environ.get('SOURCE_DATE_EPOCH'))
+ 
+ 		if os.path.isfile(p):
+ 			with open(p, 'rb') as f:
+@@ -598,12 +612,15 @@ def autoconfigure(execute_method):
+ 			cmd = env.config_cmd or 'configure'
+ 			if Configure.autoconfig == 'clobber':
+ 				tmp = Options.options.__dict__
++				launch_dir_tmp = Context.launch_dir
+ 				if env.options:
+ 					Options.options.__dict__ = env.options
++				Context.launch_dir = env.launch_dir
+ 				try:
+ 					run_command(cmd)
+ 				finally:
+ 					Options.options.__dict__ = tmp
++					Context.launch_dir = launch_dir_tmp
+ 			else:
+ 				run_command(cmd)
+ 			run_command(self.cmd)

+ 53 - 0
package/jack2/patches/patch-waflib_TaskGen_py

@@ -0,0 +1,53 @@
+--- jack2-1.9.22.orig/waflib/TaskGen.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/TaskGen.py	2026-05-14 18:36:34.596872137 +0200
+@@ -74,7 +74,7 @@ class task_gen(object):
+ 		else:
+ 			self.bld = kw['bld']
+ 			self.env = self.bld.env.derive()
+-			self.path = self.bld.path # emulate chdir when reading scripts
++			self.path = kw.get('path', self.bld.path) # by default, emulate chdir when reading scripts
+ 
+ 			# Provide a unique index per folder
+ 			# This is part of a measure to prevent output file name collisions
+@@ -400,7 +400,7 @@ def feature(*k):
+ 	Decorator that registers a task generator method that will be executed when the
+ 	object attribute ``feature`` contains the corresponding key(s)::
+ 
+-		from waflib.Task import feature
++		from waflib.TaskGen import feature
+ 		@feature('myfeature')
+ 		def myfunction(self):
+ 			print('that is my feature!')
+@@ -631,12 +631,8 @@ def process_rule(self):
+ 			cls.scan = self.scan
+ 		elif has_deps:
+ 			def scan(self):
+-				nodes = []
+-				for x in self.generator.to_list(getattr(self.generator, 'deps', None)):
+-					node = self.generator.path.find_resource(x)
+-					if not node:
+-						self.generator.bld.fatal('Could not find %r (was it declared?)' % x)
+-					nodes.append(node)
++				deps = getattr(self.generator, 'deps', None)
++				nodes = self.generator.to_nodes(deps)
+ 				return [nodes, []]
+ 			cls.scan = scan
+ 
+@@ -727,7 +723,7 @@ def sequence_order(self):
+ 	self.bld.prev = self
+ 
+ 
+-re_m4 = re.compile('@(\w+)@', re.M)
++re_m4 = re.compile(r'@(\w+)@', re.M)
+ 
+ class subst_pc(Task.Task):
+ 	"""
+@@ -905,7 +901,7 @@ def process_subst(self):
+ 		# paranoid safety measure for the general case foo.in->foo.h with ambiguous dependencies
+ 		for xt in HEADER_EXTS:
+ 			if b.name.endswith(xt):
+-				tsk.ext_in = tsk.ext_in + ['.h']
++				tsk.ext_out = tsk.ext_out + ['.h']
+ 				break
+ 
+ 		inst_to = getattr(self, 'install_path', None)

+ 74 - 0
package/jack2/patches/patch-waflib_Task_py

@@ -0,0 +1,74 @@
+--- jack2-1.9.22.orig/waflib/Task.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Task.py	2026-05-14 18:36:34.596872137 +0200
+@@ -163,10 +163,10 @@ class Task(evil):
+ 	"""File extensions that objects of this task class may create"""
+ 
+ 	before = []
+-	"""List of task class names to execute before instances of this class"""
++	"""The instances of this class are executed before the instances of classes whose names are in this list"""
+ 
+ 	after = []
+-	"""List of task class names to execute after instances of this class"""
++	"""The instances of this class are executed after the instances of classes whose names are in this list"""
+ 
+ 	hcode = Utils.SIG_NIL
+ 	"""String representing an additional hash for the class representation"""
+@@ -306,25 +306,31 @@ class Task(evil):
+ 		if hasattr(self, 'stderr'):
+ 			kw['stderr'] = self.stderr
+ 
+-		# workaround for command line length limit:
+-		# http://support.microsoft.com/kb/830473
+-		if not isinstance(cmd, str) and (len(repr(cmd)) >= 8192 if Utils.is_win32 else len(cmd) > 200000):
+-			cmd, args = self.split_argfile(cmd)
+-			try:
+-				(fd, tmp) = tempfile.mkstemp()
+-				os.write(fd, '\r\n'.join(args).encode())
+-				os.close(fd)
+-				if Logs.verbose:
+-					Logs.debug('argfile: @%r -> %r', tmp, args)
+-				return self.generator.bld.exec_command(cmd + ['@' + tmp], **kw)
+-			finally:
++		if not isinstance(cmd, str):
++			if Utils.is_win32:
++				# win32 compares the resulting length http://support.microsoft.com/kb/830473
++				too_long = sum([len(arg) for arg in cmd]) + len(cmd) > 8192
++			else:
++				# non-win32 counts the amount of arguments (200k)
++				too_long = len(cmd) > 200000
++
++			if too_long and getattr(self, 'allow_argsfile', True):
++				# Shunt arguments to a temporary file if the command is too long.
++				cmd, args = self.split_argfile(cmd)
+ 				try:
+-					os.remove(tmp)
+-				except OSError:
+-					# anti-virus and indexers can keep files open -_-
+-					pass
+-		else:
+-			return self.generator.bld.exec_command(cmd, **kw)
++					(fd, tmp) = tempfile.mkstemp()
++					os.write(fd, '\r\n'.join(args).encode())
++					os.close(fd)
++					if Logs.verbose:
++						Logs.debug('argfile: @%r -> %r', tmp, args)
++					return self.generator.bld.exec_command(cmd + ['@' + tmp], **kw)
++				finally:
++					try:
++						os.remove(tmp)
++					except OSError:
++						# anti-virus and indexers can keep files open -_-
++						pass
++		return self.generator.bld.exec_command(cmd, **kw)
+ 
+ 	def process(self):
+ 		"""
+@@ -1044,7 +1050,7 @@ def funex(c):
+ 	exec(c, dc)
+ 	return dc['f']
+ 
+-re_cond = re.compile('(?P<var>\w+)|(?P<or>\|)|(?P<and>&)')
++re_cond = re.compile(r'(?P<var>\w+)|(?P<or>\|)|(?P<and>&)')
+ re_novar = re.compile(r'^(SRC|TGT)\W+.*?$')
+ reg_act = re.compile(r'(?P<backslash>\\)|(?P<dollar>\$\$)|(?P<subst>\$\{(?P<var>\w+)(?P<code>.*?)\})', re.M)
+ def compile_fun_shell(line):

+ 39 - 0
package/jack2/patches/patch-waflib_Tools_c_aliases_py

@@ -0,0 +1,39 @@
+--- jack2-1.9.22.orig/waflib/Tools/c_aliases.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Tools/c_aliases.py	2026-05-14 18:36:34.596872137 +0200
+@@ -38,7 +38,7 @@ def sniff_features(**kw):
+ 	:return: the list of features for a task generator processing the source files
+ 	:rtype: list of string
+ 	"""
+-	exts = get_extensions(kw['source'])
++	exts = get_extensions(kw.get('source', []))
+ 	typ = kw['typ']
+ 	feats = []
+ 
+@@ -47,10 +47,12 @@ def sniff_features(**kw):
+ 		if x in exts:
+ 			feats.append('cxx')
+ 			break
+-
+ 	if 'c' in exts or 'vala' in exts or 'gs' in exts:
+ 		feats.append('c')
+ 
++	if 's' in exts or 'S' in exts:
++		feats.append('asm')
++
+ 	for x in 'f f90 F F90 for FOR'.split():
+ 		if x in exts:
+ 			feats.append('fc')
+@@ -66,11 +68,11 @@ def sniff_features(**kw):
+ 	if typ in ('program', 'shlib', 'stlib'):
+ 		will_link = False
+ 		for x in feats:
+-			if x in ('cxx', 'd', 'fc', 'c'):
++			if x in ('cxx', 'd', 'fc', 'c', 'asm'):
+ 				feats.append(x + typ)
+ 				will_link = True
+ 		if not will_link and not kw.get('features', []):
+-			raise Errors.WafError('Cannot link from %r, try passing eg: features="c cprogram"?' % kw)
++			raise Errors.WafError('Unable to determine how to link %r, try adding eg: features="c cshlib"?' % kw)
+ 	return feats
+ 
+ def set_features(kw, typ):

+ 127 - 0
package/jack2/patches/patch-waflib_Tools_c_config_py

@@ -0,0 +1,127 @@
+--- jack2-1.9.22.orig/waflib/Tools/c_config.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Tools/c_config.py	2026-05-14 18:36:34.596872137 +0200
+@@ -68,6 +68,8 @@ MACRO_TO_DEST_CPU = {
+ '__s390__'    : 's390',
+ '__sh__'      : 'sh',
+ '__xtensa__'  : 'xtensa',
++'__e2k__'     : 'e2k',
++'__riscv'     : 'riscv',
+ }
+ 
+ @conf
+@@ -86,6 +88,10 @@ def parse_flags(self, line, uselib_store
+ 	:type uselib_store: string
+ 	:param env: config set or conf.env by default
+ 	:type env: :py:class:`waflib.ConfigSet.ConfigSet`
++	:param force_static: force usage of static libraries
++	:type force_static: bool default False
++	:param posix: usage of POSIX mode for shlex lexical analiysis library
++	:type posix: bool default True
+ 	"""
+ 
+ 	assert(isinstance(line, str))
+@@ -103,6 +109,8 @@ def parse_flags(self, line, uselib_store
+ 	lex.commenters = ''
+ 	lst = list(lex)
+ 
++	so_re = re.compile(r"\.so(?:\.[0-9]+)*$")
++
+ 	# append_unique is not always possible
+ 	# for example, apple flags may require both -arch i386 and -arch ppc
+ 	uselib = uselib_store
+@@ -144,7 +152,7 @@ def parse_flags(self, line, uselib_store
+ 		elif x.startswith('-std='):
+ 			prefix = 'CXXFLAGS' if '++' in x else 'CFLAGS'
+ 			app(prefix, x)
+-		elif x.startswith('+') or x in ('-pthread', '-fPIC', '-fpic', '-fPIE', '-fpie'):
++		elif x.startswith('+') or x in ('-pthread', '-fPIC', '-fpic', '-fPIE', '-fpie', '-flto', '-fno-lto'):
+ 			app('CFLAGS', x)
+ 			app('CXXFLAGS', x)
+ 			app('LINKFLAGS', x)
+@@ -180,7 +188,7 @@ def parse_flags(self, line, uselib_store
+ 			app('CFLAGS', tmp)
+ 			app('CXXFLAGS', tmp)
+ 			app('LINKFLAGS', tmp)
+-		elif x.endswith(('.a', '.so', '.dylib', '.lib')):
++		elif x.endswith(('.a', '.dylib', '.lib')) or so_re.search(x):
+ 			appu('LINKFLAGS', x) # not cool, #762
+ 		else:
+ 			self.to_log('Unhandled flag %r' % x)
+@@ -246,13 +254,15 @@ def exec_cfg(self, kw):
+ 	* if modversion is given, then return the module version
+ 	* else, execute the *-config* program with the *args* and *variables* given, and set the flags on the *conf.env.FLAGS_name* variable
+ 
++	:param path: the **-config program to use**
++	:type path: list of string
+ 	:param atleast_pkgconfig_version: minimum pkg-config version to use (disable other tests)
+ 	:type atleast_pkgconfig_version: string
+ 	:param package: package name, for example *gtk+-2.0*
+ 	:type package: string
+-	:param uselib_store: if the test is successful, define HAVE\_*name*. It is also used to define *conf.env.FLAGS_name* variables.
++	:param uselib_store: if the test is successful, define HAVE\\_*name*. It is also used to define *conf.env.FLAGS_name* variables.
+ 	:type uselib_store: string
+-	:param modversion: if provided, return the version of the given module and define *name*\_VERSION
++	:param modversion: if provided, return the version of the given module and define *name*\\_VERSION
+ 	:type modversion: string
+ 	:param args: arguments to give to *package* when retrieving flags
+ 	:type args: list of string
+@@ -260,6 +270,12 @@ def exec_cfg(self, kw):
+ 	:type variables: list of string
+ 	:param define_variable: additional variables to define (also in conf.env.PKG_CONFIG_DEFINES)
+ 	:type define_variable: dict(string: string)
++	:param pkg_config_path: paths where pkg-config should search for .pc config files (overrides env.PKG_CONFIG_PATH if exists)
++	:type pkg_config_path: string, list of directories separated by colon
++	:param force_static: force usage of static libraries
++	:type force_static: bool default False
++	:param posix: usage of POSIX mode for shlex lexical analiysis library
++	:type posix: bool default True
+ 	"""
+ 
+ 	path = Utils.to_list(kw['path'])
+@@ -334,6 +350,7 @@ def check_cfg(self, *k, **kw):
+ 	"""
+ 	Checks for configuration flags using a **-config**-like program (pkg-config, sdl-config, etc).
+ 	This wraps internal calls to :py:func:`waflib.Tools.c_config.validate_cfg` and :py:func:`waflib.Tools.c_config.exec_cfg`
++	so check exec_cfg parameters descriptions for more details on kw passed
+ 
+ 	A few examples::
+ 
+@@ -659,20 +676,21 @@ class test_exec(Task.Task):
+ 	"""
+ 	color = 'PINK'
+ 	def run(self):
++		cmd = [self.inputs[0].abspath()] + getattr(self.generator, 'test_args', [])
+ 		if getattr(self.generator, 'rpath', None):
+ 			if getattr(self.generator, 'define_ret', False):
+-				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()])
++				self.generator.bld.retval = self.generator.bld.cmd_and_log(cmd)
+ 			else:
+-				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()])
++				self.generator.bld.retval = self.generator.bld.exec_command(cmd)
+ 		else:
+ 			env = self.env.env or {}
+ 			env.update(dict(os.environ))
+ 			for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'):
+ 				env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '')
+ 			if getattr(self.generator, 'define_ret', False):
+-				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env)
++				self.generator.bld.retval = self.generator.bld.cmd_and_log(cmd, env=env)
+ 			else:
+-				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env)
++				self.generator.bld.retval = self.generator.bld.exec_command(cmd, env=env)
+ 
+ @feature('test_exec')
+ @after_method('apply_link')
+@@ -1266,10 +1284,11 @@ def multicheck(self, *k, **kw):
+ 	tasks = []
+ 
+ 	id_to_task = {}
+-	for dct in k:
++	for counter, dct in enumerate(k):
+ 		x = Task.classes['cfgtask'](bld=bld, env=None)
+ 		tasks.append(x)
+ 		x.args = dct
++		x.args['multicheck_counter'] = counter
+ 		x.bld = bld
+ 		x.conf = self
+ 		x.args = dct

+ 27 - 0
package/jack2/patches/patch-waflib_Tools_c_preproc_py

@@ -0,0 +1,27 @@
+--- jack2-1.9.22.orig/waflib/Tools/c_preproc.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Tools/c_preproc.py	2026-05-14 18:36:34.596872137 +0200
+@@ -75,13 +75,13 @@ re_lines = re.compile(
+ 	re.IGNORECASE | re.MULTILINE)
+ """Match #include lines"""
+ 
+-re_mac = re.compile("^[a-zA-Z_]\w*")
++re_mac = re.compile(r"^[a-zA-Z_]\w*")
+ """Match macro definitions"""
+ 
+ re_fun = re.compile('^[a-zA-Z_][a-zA-Z0-9_]*[(]')
+ """Match macro functions"""
+ 
+-re_pragma_once = re.compile('^\s*once\s*', re.IGNORECASE)
++re_pragma_once = re.compile(r'^\s*once\s*', re.IGNORECASE)
+ """Match #pragma once statements"""
+ 
+ re_nl = re.compile('\\\\\r*\n', re.MULTILINE)
+@@ -660,7 +660,7 @@ def extract_macro(txt):
+ 			# empty define, assign an empty token
+ 			return (v, [[], [('T','')]])
+ 
+-re_include = re.compile('^\s*(<(?:.*)>|"(?:.*)")')
++re_include = re.compile(r'^\s*(<(?:.*)>|"(?:.*)")')
+ def extract_include(txt, defs):
+ 	"""
+ 	Process a line in the form::

+ 46 - 0
package/jack2/patches/patch-waflib_Tools_c_tests_py

@@ -0,0 +1,46 @@
+--- jack2-1.9.22.orig/waflib/Tools/c_tests.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Tools/c_tests.py	2026-05-14 18:36:34.596872137 +0200
+@@ -180,9 +180,15 @@ def check_large_file(self, **kw):
+ ########################################################################################
+ 
+ ENDIAN_FRAGMENT = '''
++#ifdef _MSC_VER
++#define testshlib_EXPORT __declspec(dllexport)
++#else
++#define testshlib_EXPORT
++#endif
++
+ short int ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
+ short int ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
+-int use_ascii (int i) {
++int testshlib_EXPORT use_ascii (int i) {
+ 	return ascii_mm[i] + ascii_ii[i];
+ }
+ short int ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
+@@ -208,12 +214,12 @@ class grep_for_endianness(Task.Task):
+ 			return -1
+ 
+ @feature('grep_for_endianness')
+-@after_method('process_source')
++@after_method('apply_link')
+ def grep_for_endianness_fun(self):
+ 	"""
+ 	Used by the endianness configuration test
+ 	"""
+-	self.create_task('grep_for_endianness', self.compiled_tasks[0].outputs[0])
++	self.create_task('grep_for_endianness', self.link_task.outputs[0])
+ 
+ @conf
+ def check_endianness(self):
+@@ -223,7 +229,9 @@ def check_endianness(self):
+ 	tmp = []
+ 	def check_msg(self):
+ 		return tmp[0]
+-	self.check(fragment=ENDIAN_FRAGMENT, features='c grep_for_endianness',
+-		msg='Checking for endianness', define='ENDIANNESS', tmp=tmp, okmsg=check_msg)
++
++	self.check(fragment=ENDIAN_FRAGMENT, features='c cshlib grep_for_endianness',
++		msg='Checking for endianness', define='ENDIANNESS', tmp=tmp,
++		okmsg=check_msg, confcache=None)
+ 	return tmp[0]
+ 

+ 50 - 0
package/jack2/patches/patch-waflib_Tools_ccroot_py

@@ -0,0 +1,50 @@
+--- jack2-1.9.22.orig/waflib/Tools/ccroot.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Tools/ccroot.py	2026-05-14 18:36:34.596872137 +0200
+@@ -111,7 +111,7 @@ def apply_incpaths(self):
+ 		tg = bld(features='includes', includes='.')
+ 
+ 	The folders only need to be relative to the current directory, the equivalent build directory is
+-	added automatically (for headers created in the build directory). This enable using a build directory
++	added automatically (for headers created in the build directory). This enables using a build directory
+ 	or not (``top == out``).
+ 
+ 	This method will add a list of nodes read by :py:func:`waflib.Tools.ccroot.to_incnodes` in ``tg.env.INCPATHS``,
+@@ -128,6 +128,7 @@ class link_task(Task.Task):
+ 	Base class for all link tasks. A task generator is supposed to have at most one link task bound in the attribute *link_task*. See :py:func:`waflib.Tools.ccroot.apply_link`.
+ 
+ 	.. inheritance-diagram:: waflib.Tools.ccroot.stlink_task waflib.Tools.c.cprogram waflib.Tools.c.cshlib waflib.Tools.cxx.cxxstlib  waflib.Tools.cxx.cxxprogram waflib.Tools.cxx.cxxshlib waflib.Tools.d.dprogram waflib.Tools.d.dshlib waflib.Tools.d.dstlib waflib.Tools.ccroot.fake_shlib waflib.Tools.ccroot.fake_stlib waflib.Tools.asm.asmprogram waflib.Tools.asm.asmshlib waflib.Tools.asm.asmstlib
++	  :top-classes: waflib.Tools.ccroot.link_task
+ 	"""
+ 	color   = 'YELLOW'
+ 
+@@ -238,6 +239,17 @@ def rm_tgt(cls):
+ 	setattr(cls, 'run', wrap)
+ rm_tgt(stlink_task)
+ 
++@feature('skip_stlib_link_deps')
++@before_method('process_use')
++def apply_skip_stlib_link_deps(self):
++	"""
++	This enables an optimization in the :py:func:wafilb.Tools.ccroot.processes_use: method that skips dependency and
++	link flag optimizations for targets that generate static libraries (via the :py:class:Tools.ccroot.stlink_task task).
++	The actual behavior is implemented in :py:func:wafilb.Tools.ccroot.processes_use: method so this feature only tells waf
++	to enable the new behavior.
++	"""
++	self.env.SKIP_STLIB_LINK_DEPS = True
++
+ @feature('c', 'cxx', 'd', 'fc', 'asm')
+ @after_method('process_source')
+ def apply_link(self):
+@@ -386,7 +398,11 @@ def process_use(self):
+ 		y = self.bld.get_tgen_by_name(x)
+ 		var = y.tmp_use_var
+ 		if var and link_task:
+-			if var == 'LIB' or y.tmp_use_stlib or x in names:
++			if self.env.SKIP_STLIB_LINK_DEPS and isinstance(link_task, stlink_task):
++				# If the skip_stlib_link_deps feature is enabled then we should
++				# avoid adding lib deps to the stlink_task instance.
++				pass
++			elif var == 'LIB' or y.tmp_use_stlib or x in names:
+ 				self.env.append_value(var, [y.target[y.target.rfind(os.sep) + 1:]])
+ 				self.link_task.dep_nodes.extend(y.link_task.outputs)
+ 				tmp_path = y.link_task.outputs[0].parent.path_from(self.get_cwd())

+ 34 - 0
package/jack2/patches/patch-waflib_Tools_compiler_c_py

@@ -0,0 +1,34 @@
+--- jack2-1.9.22.orig/waflib/Tools/compiler_c.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Tools/compiler_c.py	2026-05-14 18:36:34.596872137 +0200
+@@ -36,18 +36,19 @@ from waflib import Utils
+ from waflib.Logs import debug
+ 
+ c_compiler = {
+-'win32':  ['msvc', 'gcc', 'clang'],
+-'cygwin': ['gcc'],
+-'darwin': ['clang', 'gcc'],
+-'aix':    ['xlc', 'gcc', 'clang'],
+-'linux':  ['gcc', 'clang', 'icc'],
+-'sunos':  ['suncc', 'gcc'],
+-'irix':   ['gcc', 'irixcc'],
+-'hpux':   ['gcc'],
+-'osf1V':  ['gcc'],
+-'gnu':    ['gcc', 'clang'],
+-'java':   ['gcc', 'msvc', 'clang', 'icc'],
+-'default':['clang', 'gcc'],
++'win32':       ['msvc', 'gcc', 'clang'],
++'cygwin':      ['gcc', 'clang'],
++'darwin':      ['clang', 'gcc'],
++'aix':         ['xlc', 'gcc', 'clang'],
++'linux':       ['gcc', 'clang', 'icc'],
++'sunos':       ['suncc', 'gcc'],
++'irix':        ['gcc', 'irixcc'],
++'hpux':        ['gcc'],
++'osf1V':       ['gcc'],
++'gnu':         ['gcc', 'clang'],
++'java':        ['gcc', 'msvc', 'clang', 'icc'],
++'gnukfreebsd': ['gcc', 'clang'],
++'default':     ['clang', 'gcc'],
+ }
+ """
+ Dict mapping platform names to Waf tools finding specific C compilers::

+ 34 - 0
package/jack2/patches/patch-waflib_Tools_compiler_cxx_py

@@ -0,0 +1,34 @@
+--- jack2-1.9.22.orig/waflib/Tools/compiler_cxx.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Tools/compiler_cxx.py	2026-05-14 18:36:34.596872137 +0200
+@@ -37,18 +37,19 @@ from waflib import Utils
+ from waflib.Logs import debug
+ 
+ cxx_compiler = {
+-'win32':  ['msvc', 'g++', 'clang++'],
+-'cygwin': ['g++'],
+-'darwin': ['clang++', 'g++'],
+-'aix':    ['xlc++', 'g++', 'clang++'],
+-'linux':  ['g++', 'clang++', 'icpc'],
+-'sunos':  ['sunc++', 'g++'],
+-'irix':   ['g++'],
+-'hpux':   ['g++'],
+-'osf1V':  ['g++'],
+-'gnu':    ['g++', 'clang++'],
+-'java':   ['g++', 'msvc', 'clang++', 'icpc'],
+-'default': ['clang++', 'g++']
++'win32':       ['msvc', 'g++', 'clang++'],
++'cygwin':      ['g++', 'clang++'],
++'darwin':      ['clang++', 'g++'],
++'aix':         ['xlc++', 'g++', 'clang++'],
++'linux':       ['g++', 'clang++', 'icpc'],
++'sunos':       ['sunc++', 'g++'],
++'irix':        ['g++'],
++'hpux':        ['g++'],
++'osf1V':       ['g++'],
++'gnu':         ['g++', 'clang++'],
++'java':        ['g++', 'msvc', 'clang++', 'icpc'],
++'gnukfreebsd': ['g++', 'clang++'],
++'default':     ['clang++', 'g++']
+ }
+ """
+ Dict mapping the platform names to Waf tools finding specific C++ compilers::

+ 34 - 0
package/jack2/patches/patch-waflib_Tools_irixcc_py

@@ -0,0 +1,34 @@
+--- jack2-1.9.22.orig/waflib/Tools/irixcc.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Tools/irixcc.py	2026-05-14 18:36:34.596872137 +0200
+@@ -13,22 +13,11 @@ from waflib.Configure import conf
+ @conf
+ def find_irixcc(conf):
+ 	v = conf.env
+-	cc = None
+-	if v.CC:
+-		cc = v.CC
+-	elif 'CC' in conf.environ:
+-		cc = conf.environ['CC']
+-	if not cc:
+-		cc = conf.find_program('cc', var='CC')
+-	if not cc:
+-		conf.fatal('irixcc was not found')
+-
++	cc = conf.find_program('cc', var='CC')
+ 	try:
+ 		conf.cmd_and_log(cc + ['-version'])
+ 	except Errors.WafError:
+ 		conf.fatal('%r -version could not be executed' % cc)
+-
+-	v.CC = cc
+ 	v.CC_NAME = 'irix'
+ 
+ @conf
+@@ -57,7 +46,6 @@ def irixcc_common_flags(conf):
+ 
+ def configure(conf):
+ 	conf.find_irixcc()
+-	conf.find_cpp()
+ 	conf.find_ar()
+ 	conf.irixcc_common_flags()
+ 	conf.cc_load_tools()

+ 130 - 0
package/jack2/patches/patch-waflib_Tools_msvc_py

@@ -0,0 +1,130 @@
+--- jack2-1.9.22.orig/waflib/Tools/msvc.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Tools/msvc.py	2026-05-14 18:36:34.596872137 +0200
+@@ -99,10 +99,31 @@ all_icl_platforms = [ ('intel64', 'amd64
+ """List of icl platforms"""
+ 
+ def options(opt):
+-	opt.add_option('--msvc_version', type='string', help = 'msvc version, eg: "msvc 10.0,msvc 9.0"', default='')
++	default_ver = ''
++	vsver = os.getenv('VSCMD_VER')
++	if vsver:
++		m = re.match(r'(^\d+\.\d+).*', vsver)
++		if m:
++			default_ver = 'msvc %s' % m.group(1)
++	opt.add_option('--msvc_version', type='string', help = 'msvc version, eg: "msvc 10.0,msvc 9.0"', default=default_ver)
+ 	opt.add_option('--msvc_targets', type='string', help = 'msvc targets, eg: "x64,arm"', default='')
+ 	opt.add_option('--no-msvc-lazy', action='store_false', help = 'lazily check msvc target environments', default=True, dest='msvc_lazy')
+ 
++class MSVCVersion(object):
++	def __init__(self, ver):
++		m = re.search(r'^(.*)\s+(\d+[.]\d+)', ver)
++		if m:
++			self.name = m.group(1)
++			self.number = float(m.group(2))
++		else:
++			self.name = ver
++			self.number = 0.
++
++	def __lt__(self, other):
++		if self.number == other.number:
++			return self.name < other.name
++		return self.number < other.number
++
+ @conf
+ def setup_msvc(conf, versiondict):
+ 	"""
+@@ -119,7 +140,7 @@ def setup_msvc(conf, versiondict):
+ 		platforms=Utils.to_list(conf.env.MSVC_TARGETS) or [i for i,j in all_msvc_platforms+all_icl_platforms+all_wince_platforms]
+ 	desired_versions = getattr(Options.options, 'msvc_version', '').split(',')
+ 	if desired_versions == ['']:
+-		desired_versions = conf.env.MSVC_VERSIONS or list(reversed(sorted(versiondict.keys())))
++		desired_versions = conf.env.MSVC_VERSIONS or list(sorted(versiondict.keys(), key=MSVCVersion, reverse=True))
+ 
+ 	# Override lazy detection by evaluating after the fact.
+ 	lazy_detect = getattr(Options.options, 'msvc_lazy', True)
+@@ -187,7 +208,7 @@ echo PATH=%%PATH%%
+ echo INCLUDE=%%INCLUDE%%
+ echo LIB=%%LIB%%;%%LIBPATH%%
+ """ % (vcvars,target))
+-	sout = conf.cmd_and_log(['cmd.exe', '/E:on', '/V:on', '/C', batfile.abspath()])
++	sout = conf.cmd_and_log(['cmd.exe', '/E:on', '/V:on', '/C', batfile.abspath()], stdin=getattr(Utils.subprocess, 'DEVNULL', None))
+ 	lines = sout.splitlines()
+ 
+ 	if not lines[0]:
+@@ -281,7 +302,7 @@ def gather_wince_supported_platforms():
+ 
+ def gather_msvc_detected_versions():
+ 	#Detected MSVC versions!
+-	version_pattern = re.compile('^(\d\d?\.\d\d?)(Exp)?$')
++	version_pattern = re.compile(r'^(\d\d?\.\d\d?)(Exp)?$')
+ 	detected_versions = []
+ 	for vcver,vcvar in (('VCExpress','Exp'), ('VisualStudio','')):
+ 		prefix = 'SOFTWARE\\Wow6432node\\Microsoft\\' + vcver
+@@ -367,7 +388,7 @@ def gather_wsdk_versions(conf, versions)
+ 	:param versions: list to modify
+ 	:type versions: list
+ 	"""
+-	version_pattern = re.compile('^v..?.?\...?.?')
++	version_pattern = re.compile(r'^v..?.?\...?.?')
+ 	try:
+ 		all_versions = Utils.winreg.OpenKey(Utils.winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE\\Wow6432node\\Microsoft\\Microsoft SDKs\\Windows')
+ 	except OSError:
+@@ -525,7 +546,7 @@ def gather_icl_versions(conf, versions):
+ 	:param versions: list to modify
+ 	:type versions: list
+ 	"""
+-	version_pattern = re.compile('^...?.?\....?.?')
++	version_pattern = re.compile(r'^...?.?\....?.?')
+ 	try:
+ 		all_versions = Utils.winreg.OpenKey(Utils.winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE\\Wow6432node\\Intel\\Compilers\\C++')
+ 	except OSError:
+@@ -579,7 +600,7 @@ def gather_intel_composer_versions(conf,
+ 	:param versions: list to modify
+ 	:type versions: list
+ 	"""
+-	version_pattern = re.compile('^...?.?\...?.?.?')
++	version_pattern = re.compile(r'^...?.?\...?.?.?')
+ 	try:
+ 		all_versions = Utils.winreg.OpenKey(Utils.winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE\\Wow6432node\\Intel\\Suites')
+ 	except OSError:
+@@ -683,7 +704,7 @@ def find_lt_names_msvc(self, libname, is
+ 				if not is_static and ltdict.get('library_names', ''):
+ 					dllnames=ltdict['library_names'].split()
+ 					dll=dllnames[0].lower()
+-					dll=re.sub('\.dll$', '', dll)
++					dll=re.sub(r'\.dll$', '', dll)
+ 					return (lt_libdir, dll, False)
+ 				elif ltdict.get('old_library', ''):
+ 					olib=ltdict['old_library']
+@@ -700,7 +721,7 @@ def find_lt_names_msvc(self, libname, is
+ @conf
+ def libname_msvc(self, libname, is_static=False):
+ 	lib = libname.lower()
+-	lib = re.sub('\.lib$','',lib)
++	lib = re.sub(r'\.lib$','',lib)
+ 
+ 	if lib in g_msvc_systemlibs:
+ 		return lib
+@@ -747,11 +768,11 @@ def libname_msvc(self, libname, is_stati
+ 		for libn in libnames:
+ 			if os.path.exists(os.path.join(path, libn)):
+ 				Logs.debug('msvc: lib found: %s', os.path.join(path,libn))
+-				return re.sub('\.lib$', '',libn)
++				return re.sub(r'\.lib$', '',libn)
+ 
+ 	#if no lib can be found, just return the libname as msvc expects it
+ 	self.fatal('The library %r could not be found' % libname)
+-	return re.sub('\.lib$', '', libname)
++	return re.sub(r'\.lib$', '', libname)
+ 
+ @conf
+ def check_lib_msvc(self, libname, is_static=False, uselib_store=None):
+@@ -969,7 +990,7 @@ def apply_flags_msvc(self):
+ 	if not is_static:
+ 		for f in self.env.LINKFLAGS:
+ 			d = f.lower()
+-			if d[1:] == 'debug':
++			if d[1:] in ('debug', 'debug:full', 'debug:fastlink'):
+ 				pdbnode = self.link_task.outputs[0].change_ext('.pdb')
+ 				self.link_task.outputs.append(pdbnode)
+ 

+ 58 - 0
package/jack2/patches/patch-waflib_Tools_waf_unit_test_py

@@ -0,0 +1,58 @@
+--- jack2-1.9.22.orig/waflib/Tools/waf_unit_test.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Tools/waf_unit_test.py	2026-05-14 18:36:34.596872137 +0200
+@@ -97,6 +97,7 @@ def make_interpreted_test(self):
+ 		if isinstance(v, str):
+ 			v = v.split(os.pathsep)
+ 		self.ut_env[k] = os.pathsep.join(p + v)
++	self.env.append_value('UT_DEPS', ['%r%r' % (key, self.ut_env[key]) for key in self.ut_env])
+ 
+ @feature('test')
+ @after_method('apply_link', 'process_use')
+@@ -108,7 +109,8 @@ def make_test(self):
+ 	tsk = self.create_task('utest', self.link_task.outputs)
+ 	if getattr(self, 'ut_str', None):
+ 		self.ut_run, lst = Task.compile_fun(self.ut_str, shell=getattr(self, 'ut_shell', False))
+-		tsk.vars = lst + tsk.vars
++		tsk.vars = tsk.vars + lst
++		self.env.append_value('UT_DEPS', self.ut_str)
+ 
+ 	self.handle_ut_cwd('ut_cwd')
+ 
+@@ -139,6 +141,10 @@ def make_test(self):
+ 	if not hasattr(self, 'ut_cmd'):
+ 		self.ut_cmd = getattr(Options.options, 'testcmd', False)
+ 
++	self.env.append_value('UT_DEPS', str(self.ut_cmd))
++	self.env.append_value('UT_DEPS', self.ut_paths)
++	self.env.append_value('UT_DEPS', ['%r%r' % (key, self.ut_env[key]) for key in self.ut_env])
++
+ @taskgen_method
+ def add_test_results(self, tup):
+ 	"""Override and return tup[1] to interrupt the build immediately if a test does not run"""
+@@ -159,7 +165,7 @@ class utest(Task.Task):
+ 	"""
+ 	color = 'PINK'
+ 	after = ['vnum', 'inst']
+-	vars = []
++	vars = ['UT_DEPS']
+ 
+ 	def runnable_status(self):
+ 		"""
+@@ -200,7 +206,7 @@ class utest(Task.Task):
+ 		self.ut_exec = getattr(self.generator, 'ut_exec', [self.inputs[0].abspath()])
+ 		ut_cmd = getattr(self.generator, 'ut_cmd', False)
+ 		if ut_cmd:
+-			self.ut_exec = shlex.split(ut_cmd % ' '.join(self.ut_exec))
++			self.ut_exec = shlex.split(ut_cmd % Utils.shell_escape(self.ut_exec))
+ 
+ 		return self.exec_command(self.ut_exec)
+ 
+@@ -214,7 +220,7 @@ class utest(Task.Task):
+ 				'cmd': cmd
+ 			}
+ 			script_file = self.inputs[0].abspath() + '_run.py'
+-			Utils.writef(script_file, script_code)
++			Utils.writef(script_file, script_code, encoding='utf-8')
+ 			os.chmod(script_file, Utils.O755)
+ 			if Logs.verbose > 1:
+ 				Logs.info('Test debug file written as %r' % script_file)

+ 153 - 0
package/jack2/patches/patch-waflib_Utils_py

@@ -0,0 +1,153 @@
+--- jack2-1.9.22.orig/waflib/Utils.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/Utils.py	2026-05-14 18:36:34.596872137 +0200
+@@ -11,7 +11,7 @@ through Python versions 2.5 to 3.X and a
+ 
+ from __future__ import with_statement
+ 
+-import atexit, os, sys, errno, inspect, re, datetime, platform, base64, signal, functools, time
++import atexit, os, sys, errno, inspect, re, datetime, platform, base64, signal, functools, time, shlex
+ 
+ try:
+ 	import cPickle
+@@ -49,10 +49,16 @@ try:
+ 	from hashlib import md5
+ except ImportError:
+ 	try:
+-		from md5 import md5
++		from hashlib import sha1 as md5
+ 	except ImportError:
+-		# never fail to enable fixes from another module
++		# never fail to enable potential fixes from another module
+ 		pass
++else:
++	try:
++		md5().digest()
++	except ValueError:
++		# Fips? #2213
++		from hashlib import sha1 as md5
+ 
+ try:
+ 	import threading
+@@ -202,7 +208,7 @@ class lazy_generator(object):
+ 
+ 	next = __next__
+ 
+-is_win32 = os.sep == '\\' or sys.platform == 'win32' # msys2
++is_win32 = os.sep == '\\' or sys.platform == 'win32' or os.name == 'nt' # msys2
+ """
+ Whether this system is a Windows series
+ """
+@@ -446,6 +452,8 @@ def console_encoding():
+ 			pass
+ 		else:
+ 			if codepage:
++				if 65001 == codepage and sys.version_info < (3, 3):
++					return 'utf-8'
+ 				return 'cp%d' % codepage
+ 	return sys.stdout.encoding or ('cp1252' if is_win32 else 'latin-1')
+ 
+@@ -484,7 +492,9 @@ def split_path_msys(path):
+ if sys.platform == 'cygwin':
+ 	split_path = split_path_cygwin
+ elif is_win32:
+-	if os.environ.get('MSYSTEM'):
++	# Consider this an MSYSTEM environment if $MSYSTEM is set and python
++	# reports is executable from a unix like path on a windows host.
++	if os.environ.get('MSYSTEM') and sys.executable.startswith('/'):
+ 		split_path = split_path_msys
+ 	else:
+ 		split_path = split_path_win32
+@@ -569,10 +579,13 @@ def quote_define_name(s):
+ 	fu = fu.upper()
+ 	return fu
+ 
+-re_sh = re.compile('\\s|\'|"')
+-"""
+-Regexp used for shell_escape below
+-"""
++# shlex.quote didn't exist until python 3.3. Prior to that it was a non-documented
++# function in pipes.
++try:
++	shell_quote = shlex.quote
++except AttributeError:
++	import pipes
++	shell_quote = pipes.quote
+ 
+ def shell_escape(cmd):
+ 	"""
+@@ -581,7 +594,7 @@ def shell_escape(cmd):
+ 	"""
+ 	if isinstance(cmd, str):
+ 		return cmd
+-	return ' '.join(repr(x) if re_sh.search(x) else x for x in cmd)
++	return ' '.join(shell_quote(x) for x in cmd)
+ 
+ def h_list(lst):
+ 	"""
+@@ -596,6 +609,12 @@ def h_list(lst):
+ 	"""
+ 	return md5(repr(lst).encode()).digest()
+ 
++if sys.hexversion < 0x3000000:
++	def h_list_python2(lst):
++		return md5(repr(lst)).digest()
++	h_list_python2.__doc__ = h_list.__doc__
++	h_list = h_list_python2
++
+ def h_fun(fun):
+ 	"""
+ 	Hash functions
+@@ -615,7 +634,7 @@ def h_fun(fun):
+ 			#
+ 			# The sorting result outcome will be consistent because:
+ 			# 1. tuples are compared in order of their elements
+-			# 2. optional argument names are unique
++			# 2. optional argument namess are unique
+ 			code.extend(sorted(fun.keywords.items()))
+ 			code.append(h_fun(fun.func))
+ 			fun.code = h_list(code)
+@@ -730,7 +749,7 @@ def unversioned_sys_platform():
+ 	if s == 'cli' and os.name == 'nt':
+ 		# ironpython is only on windows as far as we know
+ 		return 'win32'
+-	return re.split('\d+$', s)[0]
++	return re.split(r'\d+$', s)[0]
+ 
+ def nada(*k, **kw):
+ 	"""
+@@ -851,6 +870,19 @@ def lib64():
+ 				return '64'
+ 	return ''
+ 
++def loose_version(ver_str):
++	# private for the time being!
++	# see #2402
++	lst = re.split(r'([.]|\\d+|[a-zA-Z])', ver_str)
++	ver = []
++	for i, val in enumerate(lst):
++		try:
++			ver.append(int(val))
++		except ValueError:
++			if val != '.':
++				ver.append(val)
++	return ver
++
+ def sane_path(p):
+ 	# private function for the time being!
+ 	return os.path.abspath(os.path.expanduser(p))
+@@ -871,13 +903,13 @@ def get_process():
+ 	except IndexError:
+ 		filepath = os.path.dirname(os.path.abspath(__file__)) + os.sep + 'processor.py'
+ 		cmd = [sys.executable, '-c', readf(filepath)]
+-		return subprocess.Popen(cmd, stdout=subprocess.PIPE, stdin=subprocess.PIPE, bufsize=0)
++		return subprocess.Popen(cmd, stdout=subprocess.PIPE, stdin=subprocess.PIPE, bufsize=0, close_fds=not is_win32)
+ 
+ def run_prefork_process(cmd, kwargs, cargs):
+ 	"""
+ 	Delegates process execution to a pre-forked process instance.
+ 	"""
+-	if not 'env' in kwargs:
++	if not kwargs.get('env'):
+ 		kwargs['env'] = dict(os.environ)
+ 	try:
+ 		obj = base64.b64encode(cPickle.dumps([cmd, kwargs, cargs]))

+ 11 - 0
package/jack2/patches/patch-waflib_ansiterm_py

@@ -0,0 +1,11 @@
+--- jack2-1.9.22.orig/waflib/ansiterm.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/ansiterm.py	2026-05-14 18:36:34.596872137 +0200
+@@ -264,7 +264,7 @@ else:
+ 			'u': pop_cursor,
+ 		}
+ 		# Match either the escape sequence or text not containing escape sequence
+-		ansi_tokens = re.compile('(?:\x1b\[([0-9?;]*)([a-zA-Z])|([^\x1b]+))')
++		ansi_tokens = re.compile(r'(?:\x1b\[([0-9?;]*)([a-zA-Z])|([^\x1b]+))')
+ 		def write(self, text):
+ 			try:
+ 				wlock.acquire()

+ 54 - 0
package/jack2/patches/patch-waflib_extras_xcode6_py

@@ -0,0 +1,54 @@
+--- jack2-1.9.22.orig/waflib/extras/xcode6.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/extras/xcode6.py	2026-05-14 18:36:34.596872137 +0200
+@@ -99,7 +99,7 @@ env.PROJ_CONFIGURATION = {
+ 		...
+ 	}
+ 	'Release': {
+-		'ARCHS' x86_64'
++		'ARCHS': x86_64'
+ 		...
+ 	}
+ }
+@@ -163,12 +163,12 @@ class XCodeNode(object):
+ 			result = result + "\t\t}"
+ 			return result
+ 		elif isinstance(value, str):
+-			return "\"%s\"" % value
++			return '"%s"' % value.replace('"', '\\\\\\"')
+ 		elif isinstance(value, list):
+ 			result = "(\n"
+ 			for i in value:
+-				result = result + "\t\t\t%s,\n" % self.tostring(i)
+-			result = result + "\t\t)"
++				result = result + "\t\t\t\t%s,\n" % self.tostring(i)
++			result = result + "\t\t\t)"
+ 			return result
+ 		elif isinstance(value, XCodeNode):
+ 			return value._id
+@@ -565,13 +565,13 @@ def process_xcode(self):
+ 	# Override target specific build settings
+ 	bldsettings = {
+ 		'HEADER_SEARCH_PATHS': ['$(inherited)'] + self.env['INCPATHS'],
+-		'LIBRARY_SEARCH_PATHS': ['$(inherited)'] + Utils.to_list(self.env.LIBPATH) + Utils.to_list(self.env.STLIBPATH) + Utils.to_list(self.env.LIBDIR) ,
++		'LIBRARY_SEARCH_PATHS': ['$(inherited)'] + Utils.to_list(self.env.LIBPATH) + Utils.to_list(self.env.STLIBPATH) + Utils.to_list(self.env.LIBDIR),
+ 		'FRAMEWORK_SEARCH_PATHS': ['$(inherited)'] + Utils.to_list(self.env.FRAMEWORKPATH),
+-		'OTHER_LDFLAGS': libs + ' ' + frameworks,
+-		'OTHER_LIBTOOLFLAGS': bld.env['LINKFLAGS'],
++		'OTHER_LDFLAGS': libs + ' ' + frameworks + ' ' + ' '.join(bld.env['LINKFLAGS']),
+ 		'OTHER_CPLUSPLUSFLAGS': Utils.to_list(self.env['CXXFLAGS']),
+ 		'OTHER_CFLAGS': Utils.to_list(self.env['CFLAGS']),
+-		'INSTALL_PATH': []
++		'INSTALL_PATH': [],
++		'GCC_PREPROCESSOR_DEFINITIONS': self.env['DEFINES']
+ 	}
+ 
+ 	# Install path
+@@ -591,7 +591,7 @@ def process_xcode(self):
+ 
+ 	# The keys represents different build configuration, e.g. Debug, Release and so on..
+ 	# Insert our generated build settings to all configuration names
+-	keys = set(settings.keys() + bld.env.PROJ_CONFIGURATION.keys())
++	keys = set(settings.keys()) | set(bld.env.PROJ_CONFIGURATION.keys())
+ 	for k in keys:
+ 		if k in settings:
+ 			settings[k].update(bldsettings)

+ 11 - 0
package/jack2/patches/patch-waflib_fixpy2_py

@@ -0,0 +1,11 @@
+--- jack2-1.9.22.orig/waflib/fixpy2.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/fixpy2.py	2026-05-14 18:36:34.596872137 +0200
+@@ -56,7 +56,7 @@ def r1(code):
+ @subst('Runner.py')
+ def r4(code):
+ 	"generator syntax"
+-	return code.replace('next(self.biter)', 'self.biter.next()')
++	return code.replace('next(self.biter)', 'self.biter.next()').replace('self.daemon = True', 'self.setDaemon(1)')
+ 
+ @subst('Context.py')
+ def r5(code):

+ 13 - 0
package/jack2/patches/patch-waflib_processor_py

@@ -0,0 +1,13 @@
+--- jack2-1.9.22.orig/waflib/processor.py	2023-02-02 12:04:10.000000000 +0100
++++ jack2-1.9.22/waflib/processor.py	2026-05-14 18:36:34.596872137 +0200
+@@ -27,6 +27,10 @@ def run():
+ 	[cmd, kwargs, cargs] = cPickle.loads(base64.b64decode(txt))
+ 	cargs = cargs or {}
+ 
++	if not 'close_fds' in kwargs:
++		# workers have no fds
++		kwargs['close_fds'] = False
++
+ 	ret = 1
+ 	out, err, ex, trace = (None, None, None, None)
+ 	try:

+ 1 - 1
package/kodi/Makefile

@@ -25,7 +25,7 @@ PKG_BUILDDEP+=		tinyxml tinyxml2 sqlite pcre2 libcdio freetype libpng
 PKG_BUILDDEP+=		libsamplerate taglib libjasper giflib xkeyboard-config
 PKG_BUILDDEP+=		glib libmodplug libgpg-error libxshmfence
 PKG_BUILDDEP+=		swig-host liblzo-host libpng-host libjpeg-turbo-host
-PKG_BUILDDEP+=		zip-host unzip-host giflib-host libsquish libdcadec
+PKG_BUILDDEP+=		zip-host giflib-host libsquish libdcadec
 PKG_BUILDDEP+=		openssl bzip2 liblzo harfbuzz pcre json
 PKG_BUILDDEP+=		flatbuffers fstrcmp spdlog mesa libinput libxkbcommon
 PKG_NEEDS:=		threads c++ data iconv

+ 0 - 33
package/l2tpns/Makefile

@@ -1,33 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include ${ADK_TOPDIR}/rules.mk
-
-PKG_NAME:=		l2tpns
-PKG_VERSION:=		2.1.21
-PKG_RELEASE:=		3
-PKG_HASH:=		0f8cde15181429e580691e994941492307efca0affe26bf7b4db7ab9477106de
-PKG_DESCR:=		layer 2 tunneling protocol network server
-PKG_SECTION:=		net/security
-PKG_DEPENDS:=		libcli
-PKG_BUILDDEP:=		libcli
-PKG_URL:=		http://l2tpns.sourceforge.net/
-PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=l2tpns/}
-
-DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz
-
-include ${ADK_TOPDIR}/mk/package.mk
-
-$(eval $(call PKG_template,L2TPNS,l2tpns,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-
-CONFIG_STYLE:=		manual
-
-l2tpns-install:
-	${INSTALL_DIR} ${IDIR_L2TPNS}/etc/l2tpns
-	${CP} ${WRKINST}/etc/l2tpns/* ${IDIR_L2TPNS}/etc/l2tpns/
-	${INSTALL_DIR} ${IDIR_L2TPNS}/usr/lib/l2tpns
-	${CP} ${WRKINST}/usr/lib/l2tpns/* ${IDIR_L2TPNS}/usr/lib/l2tpns/
-	${INSTALL_DIR} ${IDIR_L2TPNS}/usr/sbin
-	${CP} ${WRKINST}/usr/sbin/* ${IDIR_L2TPNS}/usr/sbin/
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 3
package/l2tpns/files/l2tpns.conffiles

@@ -1,3 +0,0 @@
-/etc/l2tpns/ip_pool
-/etc/l2tpns/startup-config
-/etc/l2tpns/users

+ 0 - 58
package/l2tpns/patches/patch-Makefile

@@ -1,58 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- l2tpns-2.1.21.orig/Makefile	2005-12-07 06:21:37.000000000 +0100
-+++ l2tpns-2.1.21/Makefile	2011-02-26 23:05:41.000000000 +0100
-@@ -10,18 +10,11 @@ DEFINES =
- DEFINES += -DLIBDIR='"$(libdir)"'
- DEFINES += -DETCDIR='"$(etcdir)"'
- 
--OPTIM =
--OPTIM += -g
--OPTIM += -O3
--
--CC = gcc
--LD = gcc
- INCLUDES = -I.
- CPPFLAGS = $(INCLUDES) $(DEFINES)
--CFLAGS = -Wall -Wformat-security -Wno-format-zero-length $(OPTIM)
--LDFLAGS =
-+CFLAGS ?= -Wall -Wformat-security -Wno-format-zero-length
- LDLIBS =
--INSTALL = install -c -D -o root -g root
-+INSTALL = install
- 
- l2tpns.LIBS = -lm -lcli -ldl
- 
-@@ -58,10 +51,10 @@ depend:
- 	mv Makefile.tmp Makefile
- 
- l2tpns: $(OBJS)
--	$(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS) $($@.LIBS)
-+	$(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS) $($@.LIBS)
- 
- nsctl: nsctl.o control.o
--	$(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS) $($@.LIBS)
-+	$(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS) $($@.LIBS)
- 
- %.o: %.c
- 	$(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
-@@ -70,6 +63,11 @@ nsctl: nsctl.o control.o
- 	$(CC) -fPIC -shared $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ $<
- 
- install: all
-+	$(INSTALL) -m 0755 -d $(DESTDIR)$(libdir)
-+	$(INSTALL) -m 0755 -d $(DESTDIR)$(bindir)
-+	$(INSTALL) -m 0755 -d $(DESTDIR)$(etcdir)
-+	$(INSTALL) -m 0755 -d $(DESTDIR)$(man5dir)
-+	$(INSTALL) -m 0755 -d $(DESTDIR)$(man8dir)
- 	$(INSTALL) -m 0755 l2tpns $(DESTDIR)$(bindir)/l2tpns
- 	$(INSTALL) -m 0755 nsctl $(DESTDIR)$(bindir)/nsctl
- 
-@@ -77,7 +75,7 @@ install: all
- 	$(INSTALL) -m 0644 Docs/l2tpns.8 $(DESTDIR)$(man8dir)/l2tpns.8
- 	$(INSTALL) -m 0644 Docs/nsctl.8 $(DESTDIR)$(man8dir)/nsctl.8
- 
--	gzip --best --force $(DESTDIR)$(man5dir)/*.5 $(DESTDIR)$(man8dir)/*.8
-+	gzip $(DESTDIR)$(man5dir)/*.5 $(DESTDIR)$(man8dir)/*.8
- 
- 	@for config in startup-config users ip_pool; \
- 	do \

+ 0 - 10
package/l2tpns/patches/patch-cli_c

@@ -1,10 +0,0 @@
---- l2tpns-2.1.21.orig/cli.c	2005-12-06 10:43:42.000000000 +0100
-+++ l2tpns-2.1.21/cli.c	2013-12-21 14:33:08.000000000 +0100
-@@ -4,6 +4,7 @@
- char const *cvs_name = "$Name: release_2_1_21 $";
- char const *cvs_id_cli = "$Id: cli.c,v 1.71 2005/12/06 09:43:42 bodea Exp $";
- 
-+#include <fcntl.h>
- #include <stdio.h>
- #include <stddef.h>
- #include <stdarg.h>

+ 0 - 10
package/l2tpns/patches/patch-cluster_c

@@ -1,10 +0,0 @@
---- l2tpns-2.1.21.orig/cluster.c	2006-12-02 15:09:14.000000000 +0100
-+++ l2tpns-2.1.21/cluster.c	2013-12-21 14:33:19.000000000 +0100
-@@ -2,6 +2,7 @@
- 
- char const *cvs_id_cluster = "$Id: cluster.c,v 1.50.2.1 2006/12/02 14:09:14 bodea Exp $";
- 
-+#include <fcntl.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdarg.h>

+ 0 - 51
package/l2tpns/patches/patch-l2tpns_c

@@ -1,51 +0,0 @@
-$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
---- l2tpns-2.1.21.orig/l2tpns.c	2006-06-22 17:30:50.000000000 +0200
-+++ l2tpns-2.1.21/l2tpns.c	2013-07-16 17:39:13.000000000 +0200
-@@ -10,6 +10,7 @@ char const *cvs_id_l2tpns = "$Id: l2tpns
- #include <assert.h>
- #include <errno.h>
- #include <fcntl.h>
-+#include <stdio.h>
- #include <linux/if_tun.h>
- #define SYSLOG_NAMES
- #include <syslog.h>
-@@ -22,7 +23,6 @@ char const *cvs_id_l2tpns = "$Id: l2tpns
- #include <netinet/ip6.h>
- #include <stdarg.h>
- #include <stdlib.h>
--#include <stdio.h>
- #include <string.h>
- #include <ctype.h>
- #include <sys/ioctl.h>
-@@ -4233,31 +4233,6 @@ int main(int argc, char *argv[])
- 		chdir("/tmp");
- 	}
- 
--	if (config->scheduler_fifo)
--	{
--		int ret;
--		struct sched_param params = {0};
--		params.sched_priority = 1;
--
--		if (get_nprocs() < 2)
--		{
--			LOG(0, 0, 0, "Not using FIFO scheduler, there is only 1 processor in the system.\n");
--			config->scheduler_fifo = 0;
--		}
--		else
--		{
--			if ((ret = sched_setscheduler(0, SCHED_FIFO, &params)) == 0)
--			{
--				LOG(1, 0, 0, "Using FIFO scheduler.  Say goodbye to any other processes running\n");
--			}
--			else
--			{
--				LOG(0, 0, 0, "Error setting scheduler to FIFO: %s\n", strerror(errno));
--				config->scheduler_fifo = 0;
--			}
--		}
--	}
--
- 	/* Set up the cluster communications port. */
- 	if (cluster_init() < 0)
- 		exit(1);

+ 0 - 26
package/libcli/Makefile

@@ -1,26 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include ${ADK_TOPDIR}/rules.mk
-
-PKG_NAME:=		libcli
-PKG_VERSION:=		958e44e7a69d3c71e89908fa8ee15232c55a821a
-PKG_RELEASE:=		1
-PKG_GIT:=		hash
-PKG_DESCR:=		cisco-like command-line interface library
-PKG_SECTION:=		libs/misc
-PKG_URL:=		http://sites.dparrish.com/libcli
-PKG_SITES:=		https://github.com/dparrish/libcli.git
-PKG_OPTS:=		dev
-
-include ${ADK_TOPDIR}/mk/package.mk
-
-$(eval $(call PKG_template,LIBCLI,libcli,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
-
-CONFIG_STYLE:=		manual
-
-libcli-install:
-	${INSTALL_DIR} ${IDIR_LIBCLI}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libcli.so* ${IDIR_LIBCLI}/usr/lib
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 36
package/libcli/patches/patch-Makefile

@@ -1,36 +0,0 @@
---- libcli-c63c9d35144939c8b4fa3c5394aed2e29ff517b0.orig/Makefile	2015-05-29 00:20:31.000000000 +0200
-+++ libcli-c63c9d35144939c8b4fa3c5394aed2e29ff517b0/Makefile	2015-05-31 12:27:42.000000000 +0200
-@@ -7,7 +7,7 @@ TESTS ?= 1
- 
- UNAME = $(shell sh -c 'uname -s 2>/dev/null || echo not')
- DESTDIR =
--PREFIX = /usr/local
-+PREFIX = /usr
- 
- MAJOR = 1
- MINOR = 9
-@@ -15,21 +15,17 @@ REVISION = 7
- LIB = libcli.so
- LIB_STATIC = libcli.a
- 
--CC = gcc
--AR = ar
-+CC ?= gcc
-+AR ?= ar
- ARFLAGS = rcs
- DEBUG = -g
- OPTIM = -O3
--override CFLAGS += $(DEBUG) $(OPTIM) -Wall -std=c99 -pedantic -Wformat-security -Wno-format-zero-length -Werror -Wwrite-strings -Wformat -fdiagnostics-show-option -Wextra -Wsign-compare -Wcast-align -Wno-unused-parameter
-+override CFLAGS += -Wall -std=c99 -pedantic -Wformat-security -Wno-format-zero-length -Werror -Wwrite-strings -Wformat -fdiagnostics-show-option -Wextra -Wsign-compare -Wcast-align -Wno-unused-parameter
- override LDFLAGS += -shared
- override LIBPATH += -L.
- 
--ifeq ($(UNAME),Darwin)
--override LDFLAGS += -Wl,-install_name,$(LIB).$(MAJOR).$(MINOR)
--else
- override LDFLAGS += -Wl,-soname,$(LIB).$(MAJOR).$(MINOR)
- LIBS = -lcrypt
--endif
- 
- ifeq (1,$(DYNAMIC_LIB))
- TARGET_LIBS += $(LIB)

+ 0 - 36
package/libnfc-nci/Makefile

@@ -1,36 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(ADK_TOPDIR)/rules.mk
-
-PKG_NAME:=		libnfc-nci
-PKG_VERSION:=		fbad2fb842f2b4e7cfd5bc82136a9381402c07ce
-PKG_RELEASE:=		1
-PKG_GIT:=		hash
-PKG_DESCR:=		nfc nci library
-PKG_SECTION:=		libs/net
-PKG_NEEDS:=		threads c++
-PKG_URL:=		https://github.com/NXPNFCLinux/linux_libnfc-nci
-PKG_SITES:=		https://github.com/NXPNFCLinux/linux_libnfc-nci.git
-PKG_OPTS:=		dev
-
-PKG_LIBC_DEPENDS:=	glibc uclibc-ng
-
-include $(ADK_TOPDIR)/mk/package.mk
-
-$(eval $(call PKG_template,LIBNFC_NCI,libnfc-nci,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION),$(PKG_OPTS)))
-
-AUTOTOOL_STYLE:=	bootstrap
-
-libnfc-nci-install:
-	$(INSTALL_DIR) $(IDIR_LIBNFC_NCI)/etc
-	$(INSTALL_DIR) $(IDIR_LIBNFC_NCI)/usr/lib
-	$(INSTALL_DIR) $(IDIR_LIBNFC_NCI)/usr/sbin
-	$(CP) $(WRKINST)/usr/lib/libnfc*.so* \
-		$(IDIR_LIBNFC_NCI)/usr/lib
-	$(CP) $(WRKINST)/usr/sbin/nfcDemoApp \
-		$(IDIR_LIBNFC_NCI)/usr/sbin
-	$(CP) $(WRKINST)/etc/libnfc* \
-		$(IDIR_LIBNFC_NCI)/etc
-
-include $(ADK_TOPDIR)/mk/pkg-bottom.mk

+ 0 - 37
package/libnfc-nci/patches/patch-configure_ac

@@ -1,37 +0,0 @@
---- libnfc-nci-fbad2fb842f2b4e7cfd5bc82136a9381402c07ce.orig/configure.ac	2016-03-21 10:14:22.000000000 +0100
-+++ libnfc-nci-fbad2fb842f2b4e7cfd5bc82136a9381402c07ce/configure.ac	2016-03-21 10:21:27.855611688 +0100
-@@ -54,16 +54,6 @@ AC_ARG_ENABLE([pn7120],
-   *) AC_MSG_ERROR([bad value ${enableval} for --enable-pn7120]) ;;
- esac],[pn7120=false])
- 
--AC_ARG_VAR(openssldir, help-string)
--
--AC_ARG_ENABLE([llcp1_3],
--[  --enable-llcp1_3    enable LLCP1.3 (secured P2P)],
--[case "${enableval}" in
--  yes) llcp1_3=true ;;
--  no)  llcp1_3=false ;;
--  *) AC_MSG_ERROR([bad value ${enableval} for --enable-llcp1_3]) ;;
--esac],[llcp1_3=false])
--
- AM_CONDITIONAL([CHIP_SEL_NOK], [
- COUNT=0
- if [ "$pn7120" = "true" ]; then
-@@ -73,17 +63,6 @@ if [test "$COUNT" -gt 1]; then
- AC_MSG_ERROR(Can not enable multiple chip type)
- fi])
- 
--AM_CONDITIONAL([LLCP1_3_ENABLED], [if [$llcp1_3]; then
--AC_MSG_NOTICE([LLCP1.3 support is enabled (secure P2P)])
--AM_CONDITIONAL([OPENSSLDIR_SET], [if ["${ac_cv_env_openssldir_set}" = "set"]; then
--AC_MSG_NOTICE([openssldir path set])
--else
--AC_MSG_ERROR(path to openssldir not set (required when LLCP1.3 support is enabled))
--fi])
--else
--AC_MSG_NOTICE([LLCP1.3 support is disabled (no secure P2P)])
--fi])
--
- AM_CONDITIONAL([CHIP_SEL_ONE], [if [$pn7120]; then
- AC_MSG_NOTICE([Selected chip type is PN7120])
- else

+ 0 - 36
package/libnids/Makefile

@@ -1,36 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include ${ADK_TOPDIR}/rules.mk
-
-PKG_NAME:=		libnids
-PKG_VERSION:=		1.24
-PKG_RELEASE:=		3
-PKG_HASH:=		314b4793e0902fbf1fdb7fb659af37a3c1306ed1aad5d1c84de6c931b351d359
-PKG_DESCR:=		network intrusion detection system library
-PKG_SECTION:=		libs/net
-PKG_DEPENDS:=		libnet libpcap glib
-PKG_BUILDDEP:=		libnet libpcap glib
-PKG_URL:=		http://libnids.sourceforge.net/
-PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=libnids/}
-PKG_OPTS:=		dev
-
-DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz
-
-PKG_LIBC_DEPENDS:=	uclibc-ng glibc
-
-include ${ADK_TOPDIR}/mk/package.mk
-
-$(eval $(call PKG_template,LIBNIDS,libnids,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
-
-TARGET_LDFLAGS+=	-lpthread
-CONFIGURE_ENV+=		ac_cv_lib_nsl_gethostbyname=no
-CONFIGURE_ARGS+=	--with-libpcap=${STAGING_TARGET_DIR}/usr
-AUTOTOOL_STYLE:=	autoreconf
-XAKE_FLAGS+=		install_prefix="${WRKINST}"
-
-libnids-install:
-	${INSTALL_DIR} ${IDIR_LIBNIDS}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libnids.so* ${IDIR_LIBNIDS}/usr/lib
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 20
package/libnids/patches/patch-configure_in

@@ -1,20 +0,0 @@
---- libnids-1.24.orig/configure.in	2006-05-01 19:14:51.000000000 +0200
-+++ libnids-1.24/configure.in	2014-01-06 16:25:57.765584034 +0100
-@@ -65,13 +65,13 @@ AC_ARG_WITH(libpcap,
-      ;;
-   *)
-      AC_MSG_RESULT($withval)
--     if test -f $withval/pcap.h -a -f $withval/libpcap.a; then
-+     if test -f $withval/include/pcap.h; then
-         owd=`pwd`
-         if cd $withval; then withval=`pwd`; cd $owd; fi
--	PCAP_CFLAGS="-I$withval -I$withval/bpf"
--	PCAPLIB="-L$withval -lpcap"
-+	PCAP_CFLAGS="-I$withval/include -I$withval/include/bpf"
-+	PCAPLIB="-L$withval/lib -lpcap"
-      else
--        AC_ERROR(pcap.h or libpcap.a not found in $withval)
-+        AC_ERROR(pcap.h not found in $withval)
-      fi
-      ;;
-   esac ],

+ 0 - 27
package/libowfat/Makefile

@@ -1,27 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include ${ADK_TOPDIR}/rules.mk
-
-PKG_NAME:=		libowfat
-PKG_VERSION:=		0.33
-PKG_RELEASE:=		1
-PKG_HASH:=		311ec8b3f4b72bb442e323fb013a98f956fa745547f2bc9456287b20d027cd7d
-PKG_DESCR:=		owfat library
-PKG_SECTION:=		libs/misc
-PKG_URL:=		https://www.fefe.de/libowfat
-PKG_SITES:=		https://www.fefe.de/libowfat/
-
-PKG_NOPARALLEL:=        1
-
-include ${ADK_TOPDIR}/mk/package.mk
-
-CONFIG_STYLE:=		manual
-
-TARGET_CFLAGS+=		${TARGET_CPPFLAGS}
-MAKE_FILE=		GNUmakefile
-MAKE_FLAGS+=		DIET= CROSS=${TARGET_CROSS} \
-			LDFLAGS='${TARGET_LDFLAGS}'
-FAKE_FLAGS+=		prefix='/usr'
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 25
package/libowfat/patches/patch-GNUmakefile

@@ -1,25 +0,0 @@
---- libowfat-0.33.orig/GNUmakefile	2021-04-24 12:47:51.000000000 +0200
-+++ libowfat-0.33/GNUmakefile	2024-02-23 05:07:36.527866006 +0100
-@@ -23,9 +23,9 @@ picx32 piex32:
- 
- CROSS=
- #CROSS=i686-mingw-
--CC?=gcc
--AR?=ar
--RANLIB?=ranlib
-+CC=gcc
-+AR=ar
-+RANLIB=ranlib
- CCC=$(CROSS)$(CC)
- WERROR=
- WARN=-W -Wall -Wextra $(WERROR)
-@@ -41,7 +41,8 @@ OPT_PLUS=-O3 $(NATIVE)
- 
- DEFINE=-D_REENTRANT
- 
--CFLAGS=-pipe $(WARN) $(DEFINE) $(OPT_REG)
-+CFLAGS?=
-+CFLAGS+=-pipe $(WARN) $(DEFINE) $(OPT_REG)
- CFLAGS_OPT=-pipe $(WARN) $(DEFINE) $(OPT_PLUS)
- 
- #CFLAGS=-pipe -Os -march=pentiumpro -mcpu=pentiumpro -fomit-frame-pointer -fschedule-insns2 -Wall

+ 0 - 31
package/libpri/Makefile

@@ -1,31 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include ${ADK_TOPDIR}/rules.mk
-
-PKG_NAME:=		libpri
-PKG_VERSION:=		1.4.12
-PKG_RELEASE:=		2
-PKG_HASH:=		c0e170a742ed5d19515c99472fe79a467522355b3c24e4f7359d667b7d756e75
-PKG_DESCR:=		c implementation of the primary rate isdn specification
-PKG_SECTION:=		libs/misc
-PKG_URL:=		http://www.asterisk.org/
-PKG_SITES:=		http://downloads.asterisk.org/pub/telephony/libpri/releases/
-PKG_OPTS:=		dev
-
-DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz
-
-include ${ADK_TOPDIR}/mk/package.mk
-
-$(eval $(call PKG_template,LIBPRI,libpri,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
-
-CONFIG_STYLE:=		manual
-
-MAKE_FLAGS+=		CC='${TARGET_CC}' LDCONFIG='' ARCH=$(ADK_TARGET_ARCH)
-FAKE_FLAGS+=		INSTALL_BASE=/usr
-
-libpri-install:
-	${INSTALL_DIR} ${IDIR_LIBPRI}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libpri.so* ${IDIR_LIBPRI}/usr/lib
-
-include ${ADK_TOPDIR}/mk/pkg-bottom.mk

+ 0 - 23
package/libpri/patches/patch-Makefile

@@ -1,23 +0,0 @@
---- libpri-1.4.12.orig/Makefile	2011-02-01 01:37:49.000000000 +0100
-+++ libpri-1.4.12/Makefile	2012-07-25 12:46:12.000000000 +0200
-@@ -28,8 +28,8 @@ CC=gcc
- GREP=grep
- AWK=awk
- 
--OSARCH=$(shell uname -s)
--PROC?=$(shell uname -m)
-+OSARCH=Linux
-+PROC?=$(ARCH)
- 
- # SONAME version; should be changed on every ABI change
- # please don't change it needlessly; it's perfectly fine to have a SONAME
-@@ -90,7 +90,8 @@ DYNAMIC_OBJS= \
- 	rose_qsig_mwi.lo \
- 	rose_qsig_name.lo \
- 	version.lo
--CFLAGS=-Wall -Werror -Wstrict-prototypes -Wmissing-prototypes -g -fPIC $(ALERTING) $(LIBPRI_OPT) $(COVERAGE_CFLAGS)
-+CFLAGS?=
-+CFLAGS+=-Wall -Werror -Wstrict-prototypes -Wmissing-prototypes -g -fPIC $(ALERTING) $(LIBPRI_OPT) $(COVERAGE_CFLAGS)
- INSTALL_PREFIX=$(DESTDIR)
- INSTALL_BASE=/usr
- libdir?=$(INSTALL_BASE)/lib

+ 0 - 27
package/mopd/Makefile

@@ -1,27 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(ADK_TOPDIR)/rules.mk
-
-PKG_NAME:=		mopd
-PKG_VERSION:=		1.3.5
-PKG_RELEASE:=		1
-PKG_DESCR:=		mop daemon
-PKG_SECTION:=		net/misc
-
-NO_DISTFILES:=		1
-
-include $(ADK_TOPDIR)/mk/package.mk
-
-$(eval $(call PKG_template,MOPD,mopd,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION)))
-
-TARGET_CFLAGS+=		-fcommon
-CONFIG_STYLE:=		manual
-INSTALL_STYLE:=		manual
-
-mopd-install:
-	$(INSTALL_DIR) $(IDIR_MOPD)/usr/sbin
-	$(INSTALL_BIN) $(WRKBUILD)/mopd/mopd \
-		$(IDIR_MOPD)/usr/sbin
-
-include $(ADK_TOPDIR)/mk/pkg-bottom.mk

+ 0 - 34
package/mopd/src/Makefile

@@ -1,34 +0,0 @@
-
-# uncomment this to send the correct hostname to the client
-# otherwise 'DEFAULT_HOSTNAME' will be sent
-# REAL_HOSTNAME = "-DSEND_REAL_HOSTNAME"
-REAL_HOSTNAME =""
-DEFAULT_HOSTNAME="-DDEFAULT_HOSTNAME=\\\"ipc\\\""
-
-# this is the path mopd will look for files in
-MOP_PATH="-DMOP_FILE_PATH=\\\"/tftpboot/mop\\\""
-
-# compiling on Alpha Linux 2.2.17 i needed the following:
-# AOUT_SUPPORT="-DNOAOUT"
-AOUT_SUPPORT=""
-
-CFLAGS="-fcommon ${AOUT_SUPPORT} ${MOP_PATH} ${DEFAULT_HOSTNAME} ${REAL_HOSTNAME}"
-
-#make file to build linux-mopd
-SUBDIRS=common mopd mopchk mopprobe moptrace
-
-all: 
-	for dir in ${SUBDIRS}; 	\
-	do		   	\
-	  echo making $$dir;  	\
-	  (cd $$dir; make CFLAGS=$(CFLAGS) ) ;	\
-	done
-	
-	
-clean:
-	for dir in ${SUBDIRS} ;	\
-	do			\
-	  (cd $$dir ; make clean); \
-	done
-	
-	

+ 0 - 20
package/mopd/src/README

@@ -1,20 +0,0 @@
-mopd-linux-20000808
-
- This is the Linux version of Mats Jansens' Mopd.
- 
- The sources here are taken from the NetBSD version of mopd 2.5.3/4 
- in CVS, plus some bits from the OpenBSD port, and the security 
- fixes reported on BUGTRAQ on 08 Aug 2000. 
- 
- I had to rewrite the Makefiles, and hack things about a bit to compile 
- under Linux, So if this version doesnt work for you, send email to the 
- Linux/VAX list detailing the problem. 
- 
- The mopa.out program does not work. The a.out structures have different
- names under NetBSD and Linux (see /usr/include/a.out.h), and so the 
- code needs re-writing.
- 
- atp@pergamentum.com 8/Aug/2000
- 
- Patches from John Nall added for Alpha/Linux
- 

Некоторые файлы не были показаны из-за большого количества измененных файлов