summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-embedded')
-rw-r--r--dev-embedded/arduino-listserialportsc/arduino-listserialportsc-1.4.0-r1.ebuild (renamed from dev-embedded/arduino-listserialportsc/arduino-listserialportsc-1.4.0.ebuild)17
-rw-r--r--dev-embedded/avarice/avarice-2.14-r1.ebuild36
-rw-r--r--dev-embedded/avarice/avarice-2.14.ebuild4
-rw-r--r--dev-embedded/avarice/files/avarice-2.14-implicit-function-declarations.patch24
-rw-r--r--dev-embedded/avrdude/Manifest1
-rw-r--r--dev-embedded/avrdude/avrdude-7.0.ebuild6
-rw-r--r--dev-embedded/avrdude/avrdude-7.2.ebuild65
-rw-r--r--dev-embedded/avrdude/metadata.xml3
-rw-r--r--dev-embedded/dc-tool-ip/dc-tool-ip-1.0.4.ebuild4
-rw-r--r--dev-embedded/dfu-programmer/Manifest2
-rw-r--r--dev-embedded/dfu-programmer/dfu-programmer-1.0.0.ebuild (renamed from dev-embedded/dfu-programmer/dfu-programmer-0.7.2-r1.ebuild)36
-rw-r--r--dev-embedded/dfu-programmer/metadata.xml1
-rw-r--r--dev-embedded/esptool/Manifest6
-rw-r--r--dev-embedded/esptool/esptool-3.3.1.ebuild46
-rw-r--r--dev-embedded/esptool/esptool-3.3.2.ebuild47
-rw-r--r--dev-embedded/esptool/esptool-4.3.ebuild68
-rw-r--r--dev-embedded/esptool/esptool-4.6.2.ebuild (renamed from dev-embedded/esptool/esptool-4.2.1.ebuild)30
-rw-r--r--dev-embedded/esptool/esptool-4.7.0-r2.ebuild65
-rw-r--r--dev-embedded/gpsim/Manifest1
-rw-r--r--dev-embedded/gpsim/gpsim-0.31.0.ebuild6
-rw-r--r--dev-embedded/gpsim/gpsim-0.32.1.ebuild41
-rw-r--r--dev-embedded/gputils/Manifest2
-rw-r--r--dev-embedded/gputils/files/gputils-1.5.0-respect-flags.patch123
-rw-r--r--dev-embedded/gputils/files/gputils-1.5.2-fix-invalid-operator.patch25
-rw-r--r--dev-embedded/gputils/gputils-1.5.2.ebuild (renamed from dev-embedded/gputils/gputils-1.5.0.ebuild)25
-rw-r--r--dev-embedded/icdprog/icdprog-0.5.ebuild4
-rw-r--r--dev-embedded/include/include-0.4.2.ebuild4
-rw-r--r--dev-embedded/jal/files/jal-0.4.62-fix-incompatible-integer-to-pointer-clang16.patch22
-rw-r--r--dev-embedded/jal/jal-0.4.62-r1.ebuild25
-rw-r--r--dev-embedded/jal/jal-0.4.62.ebuild4
-rw-r--r--dev-embedded/libdisasm/libdisasm-0.23.ebuild4
-rw-r--r--dev-embedded/libftd2xx/Manifest6
-rw-r--r--dev-embedded/libftd2xx/libftd2xx-1.4.27.ebuild38
-rw-r--r--dev-embedded/libftd2xx/libftd2xx-1.4.8.ebuild42
-rw-r--r--dev-embedded/libftd2xx/metadata.xml13
-rw-r--r--dev-embedded/libftdi/libftdi-0.20-r2.ebuild (renamed from dev-embedded/libftdi/libftdi-0.20-r1.ebuild)24
-rw-r--r--dev-embedded/libftdi/libftdi-0.20-r3.ebuild90
-rw-r--r--dev-embedded/libftdi/libftdi-1.5-r5.ebuild (renamed from dev-embedded/libftdi/libftdi-1.5-r4.ebuild)32
-rw-r--r--dev-embedded/libftdi/libftdi-1.5-r6.ebuild90
-rw-r--r--dev-embedded/libftdi/libftdi-9999.ebuild28
-rw-r--r--dev-embedded/libjaylink/libjaylink-0.3.1.ebuild4
-rw-r--r--dev-embedded/mcu8051ide/mcu8051ide-1.4.10-r1.ebuild4
-rw-r--r--dev-embedded/mcu8051ide/metadata.xml1
-rw-r--r--dev-embedded/mspdebug/mspdebug-0.25-r1.ebuild (renamed from dev-embedded/mspdebug/mspdebug-0.25.ebuild)10
-rw-r--r--dev-embedded/nodemcu-uploader/nodemcu-uploader-1.0.0-r1.ebuild27
-rw-r--r--dev-embedded/nodemcu-uploader/nodemcu-uploader-1.0.0.ebuild4
-rw-r--r--dev-embedded/openocd/Manifest2
-rw-r--r--dev-embedded/openocd/files/openocd-0.12.0-capstone-includedir.patch40
-rw-r--r--dev-embedded/openocd/metadata.xml2
-rw-r--r--dev-embedded/openocd/openocd-0.12.0-r1.ebuild (renamed from dev-embedded/openocd/openocd-0.11.0.ebuild)23
-rw-r--r--dev-embedded/openocd/openocd-0.12.0-r2.ebuild111
-rw-r--r--dev-embedded/openocd/openocd-9999.ebuild35
-rw-r--r--dev-embedded/parapin/parapin-1.5.0-r1.ebuild4
-rw-r--r--dev-embedded/parapin/parapin-1.5.1_beta1-r1.ebuild4
-rw-r--r--dev-embedded/picotool/Manifest2
-rw-r--r--dev-embedded/picotool/files/picotool-1.1.2-musl.patch17
-rw-r--r--dev-embedded/picotool/picotool-1.1.2.ebuild (renamed from dev-embedded/picotool/picotool-1.1.0.ebuild)11
-rw-r--r--dev-embedded/platformio/Manifest2
-rw-r--r--dev-embedded/platformio/metadata.xml3
-rw-r--r--dev-embedded/platformio/platformio-6.1.11.ebuild (renamed from dev-embedded/platformio/platformio-6.1.5.ebuild)36
-rw-r--r--dev-embedded/ponyprog/Manifest1
-rw-r--r--dev-embedded/ponyprog/files/ponyprog-3.1.2-fix-build-system.patch47
-rw-r--r--dev-embedded/ponyprog/ponyprog-3.1.2.ebuild41
-rw-r--r--dev-embedded/ponyprog/ponyprog-3.1.3.ebuild19
-rw-r--r--dev-embedded/raspberrypi-utils/Manifest1
-rw-r--r--dev-embedded/raspberrypi-utils/files/raspberrypi-utils-werror.patch77
-rw-r--r--dev-embedded/raspberrypi-utils/metadata.xml11
-rw-r--r--dev-embedded/raspberrypi-utils/raspberrypi-utils-0_p20240203.ebuild48
-rw-r--r--dev-embedded/rpi-eeprom/Manifest8
-rw-r--r--dev-embedded/rpi-eeprom/metadata.xml4
-rw-r--r--dev-embedded/rpi-eeprom/rpi-eeprom-15.0_p1.ebuild (renamed from dev-embedded/rpi-eeprom/rpi-eeprom-13.3_p1-r1.ebuild)6
-rw-r--r--dev-embedded/rpi-eeprom/rpi-eeprom-21.0_p1.ebuild (renamed from dev-embedded/rpi-eeprom/rpi-eeprom-13.8_p1.ebuild)34
-rw-r--r--dev-embedded/sdcc/Manifest4
-rw-r--r--dev-embedded/sdcc/files/binutils-2.41-acinclude.m4193
-rw-r--r--dev-embedded/sdcc/files/sdcc-4.2.0-link-tinfo.patch24
-rw-r--r--dev-embedded/sdcc/files/sdcc-4.3.0-autoreconf-libiberty.patch15
-rw-r--r--dev-embedded/sdcc/files/sdcc-4.3.0-fix-binutils-dependency.patch22
-rw-r--r--dev-embedded/sdcc/files/sdcc-4.3.0-fix-mkdir-autoconf-test.patch13
-rw-r--r--dev-embedded/sdcc/files/sdcc-4.3.2-override-override.patch62
-rw-r--r--dev-embedded/sdcc/metadata.xml17
-rw-r--r--dev-embedded/sdcc/sdcc-3.8.0-r1.ebuild4
-rw-r--r--dev-embedded/sdcc/sdcc-4.0.0.ebuild4
-rw-r--r--dev-embedded/sdcc/sdcc-4.1.0.ebuild4
-rw-r--r--dev-embedded/sdcc/sdcc-4.2.0.ebuild158
-rw-r--r--dev-embedded/sdcc/sdcc-4.3.0-r1.ebuild179
-rw-r--r--dev-embedded/sdcc/sdcc-9999.ebuild157
-rw-r--r--dev-embedded/srecord/srecord-1.64-r1.ebuild4
-rw-r--r--dev-embedded/stm32flash/Manifest1
-rw-r--r--dev-embedded/stm32flash/metadata.xml5
-rw-r--r--dev-embedded/stm32flash/stm32flash-0.7.ebuild12
-rw-r--r--dev-embedded/sunxi-tools/Manifest2
-rw-r--r--dev-embedded/sunxi-tools/sunxi-tools-1.4.2.ebuild78
-rw-r--r--dev-embedded/sunxi-tools/sunxi-tools-9999.ebuild78
-rw-r--r--dev-embedded/u-boot-tools/Manifest5
-rw-r--r--dev-embedded/u-boot-tools/files/disable-unused-mkeficapsule.patch14
-rw-r--r--dev-embedded/u-boot-tools/files/disable-unused-pylibfdt.patch17
-rw-r--r--dev-embedded/u-boot-tools/metadata.xml4
-rw-r--r--dev-embedded/u-boot-tools/u-boot-tools-2023.10-r1.ebuild (renamed from dev-embedded/u-boot-tools/u-boot-tools-2022.07.ebuild)17
-rw-r--r--dev-embedded/u-boot-tools/u-boot-tools-2024.01.ebuild (renamed from dev-embedded/u-boot-tools/u-boot-tools-2022.10.ebuild)19
-rw-r--r--dev-embedded/urjtag/Manifest2
-rw-r--r--dev-embedded/urjtag/files/urjtag-2021.03-fix-python-setup.patch14
-rw-r--r--dev-embedded/urjtag/urjtag-2021.03.ebuild (renamed from dev-embedded/urjtag/urjtag-2019.12.ebuild)48
-rw-r--r--dev-embedded/urjtag/urjtag-9999.ebuild52
-rw-r--r--dev-embedded/usbprog/Manifest2
-rw-r--r--dev-embedded/usbprog/metadata.xml2
-rw-r--r--dev-embedded/usbprog/usbprog-0.3.0_p20140828-r2.ebuild (renamed from dev-embedded/usbprog/usbprog-0.3.0_p20140828-r1.ebuild)12
-rw-r--r--dev-embedded/xa/Manifest2
-rw-r--r--dev-embedded/xa/files/xa-2.3.10-Makefile.patch77
-rw-r--r--dev-embedded/xa/files/xa-2.4.0-make.patch28
-rw-r--r--dev-embedded/xa/xa-2.4.0.ebuild (renamed from dev-embedded/xa/xa-2.3.13.ebuild)4
110 files changed, 2277 insertions, 827 deletions
diff --git a/dev-embedded/arduino-listserialportsc/arduino-listserialportsc-1.4.0.ebuild b/dev-embedded/arduino-listserialportsc/arduino-listserialportsc-1.4.0-r1.ebuild
index b9a28eb7e8cd..78222b7860f6 100644
--- a/dev-embedded/arduino-listserialportsc/arduino-listserialportsc-1.4.0.ebuild
+++ b/dev-embedded/arduino-listserialportsc/arduino-listserialportsc-1.4.0-r1.ebuild
@@ -1,23 +1,24 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit java-pkg-2 toolchain-funcs
DESCRIPTION="Arduino helper library to list serial ports"
HOMEPAGE="https://github.com/arduino/listSerialPortsC"
SRC_URI="https://github.com/arduino/listSerialPortsC/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/listSerialPortsC-${PV}"
LICENSE="LGPL-3"
SLOT="0"
KEYWORDS="amd64 x86"
-RDEPEND=">=dev-libs/libserialport-0.1.1"
-DEPEND="${RDEPEND}
- >=virtual/jdk-1.8"
-
-S="${WORKDIR}/listSerialPortsC-${PV}"
+COMMON_DEPEND=">=dev-libs/libserialport-0.1.1"
+DEPEND="${COMMON_DEPEND}
+ >=virtual/jdk-1.8:*"
+RDEPEND="${COMMON_DEPEND}
+ >=virtual/jre-1.8:*"
src_compile() {
$(tc-getCC) -O2 -Wall ${CPPFLAGS} ${CFLAGS} -c -o main.o main.c || die
@@ -38,6 +39,6 @@ src_compile() {
src_install() {
dobin listSerialC
- dolib liblistSerialsj.so.${PV}
+ dolib.so liblistSerialsj.so.${PV}
dosym liblistSerialsj.so.${PV} /usr/$(get_libdir)/liblistSerialsj.so
}
diff --git a/dev-embedded/avarice/avarice-2.14-r1.ebuild b/dev-embedded/avarice/avarice-2.14-r1.ebuild
new file mode 100644
index 000000000000..43beb06d967d
--- /dev/null
+++ b/dev-embedded/avarice/avarice-2.14-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="Interface for GDB to Atmel AVR JTAGICE in circuit emulator"
+HOMEPAGE="https://avarice.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-broken-__unused-macro.patch
+ "${FILESDIR}"/${P}-implicit-function-declarations.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # bug #788295
+ append-cxxflags -std=c++14
+
+ default
+}
+
+src_install() {
+ default
+ dodoc doc/*.txt
+}
diff --git a/dev-embedded/avarice/avarice-2.14.ebuild b/dev-embedded/avarice/avarice-2.14.ebuild
index 3486df353266..f6ed367893b3 100644
--- a/dev-embedded/avarice/avarice-2.14.ebuild
+++ b/dev-embedded/avarice/avarice-2.14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,7 +6,7 @@ EAPI=7
inherit flag-o-matic
DESCRIPTION="Interface for GDB to Atmel AVR JTAGICE in circuit emulator"
-HOMEPAGE="http://avarice.sourceforge.net/"
+HOMEPAGE="https://avarice.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
LICENSE="GPL-2"
diff --git a/dev-embedded/avarice/files/avarice-2.14-implicit-function-declarations.patch b/dev-embedded/avarice/files/avarice-2.14-implicit-function-declarations.patch
new file mode 100644
index 000000000000..1d266b0bb113
--- /dev/null
+++ b/dev-embedded/avarice/files/avarice-2.14-implicit-function-declarations.patch
@@ -0,0 +1,24 @@
+Bug: https://bugs.gentoo.org/900687
+Upstream patch: https://sourceforge.net/p/avarice/patches/41/
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -97,7 +97,7 @@
+
+ # Checks for header files.
+ AC_HEADER_STDC
+-AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/time.h termios.h unistd.h])
++AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/stat.h sys/time.h termios.h unistd.h])
+
+ AC_CHECK_HEADERS([bfd.h], , [ac_found_bfd_h=no])
+
+@@ -142,6 +142,9 @@
+ AC_MSG_CHECKING([whether libbfd requires libdl])
+ AC_LINK_IFELSE(
+ [AC_LANG_SOURCE([#include <bfd.h>
++ #ifndef bfd_get_section_name
++ extern bfd_get_section_name(bfd *abfd, const char *name);
++ #endif
+ bfd *file;
+ int main(void) {
+ bfd_init();
diff --git a/dev-embedded/avrdude/Manifest b/dev-embedded/avrdude/Manifest
index 3675ad0936cc..9c081c4825fd 100644
--- a/dev-embedded/avrdude/Manifest
+++ b/dev-embedded/avrdude/Manifest
@@ -1 +1,2 @@
DIST avrdude-7.0.tar.gz 2354082 BLAKE2B 44cc6cb82abd4e44f9e7f72901cd9b2a13c9e7635582993ea9a01ea482709ca6a8a3454980446d1196a67cec19a021133d5821731618350336f81fce09d7c049 SHA512 ca3338e6f2f0efc102e70f72531efbd237c5f7bc282d8db5530038f9e20b18a7c2682343bb2baff08c81f8959b066323a444dd64c2362a340a9d9708f90770e0
+DIST avrdude-7.2.tar.gz 2622520 BLAKE2B 7bf86ea802bb150415a0d8c1ba884d5ff84b3d4bfb0e77470205d578001c1c19f782ddd37ae4235fba9f2ccc05247aea1723ebc2e1c71174c23b0986e835231e SHA512 04d04492458bc1d183ad8ff403cf3d38f65f44bb992df589e8f49d28b5347eb63433568c95f5d575ae651be70d725d3f178175cd1fe6dcd46ec013c3fe3f2ab0
diff --git a/dev-embedded/avrdude/avrdude-7.0.ebuild b/dev-embedded/avrdude/avrdude-7.0.ebuild
index 2a0cc3148e7b..9acd4349f655 100644
--- a/dev-embedded/avrdude/avrdude-7.0.ebuild
+++ b/dev-embedded/avrdude/avrdude-7.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -24,8 +24,8 @@ RDEPEND="
"
DEPEND="${RDEPEND}"
BDEPEND="
- sys-devel/bison
- sys-devel/flex
+ app-alternatives/yacc
+ app-alternatives/lex
"
src_prepare() {
diff --git a/dev-embedded/avrdude/avrdude-7.2.ebuild b/dev-embedded/avrdude/avrdude-7.2.ebuild
new file mode 100644
index 000000000000..e893eaa4b9c3
--- /dev/null
+++ b/dev-embedded/avrdude/avrdude-7.2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="AVR Downloader/UploaDEr"
+HOMEPAGE="https://avrdudes.github.io/avrdude https://github.com/avrdudes/avrdude"
+SRC_URI="https://github.com/avrdudes/avrdude/archive/refs/tags/v${PV}.tar.gz -> avrdude-${PV}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0/1" # SOVERSION in src/CMakeLists.txt
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="ftdi readline"
+
+RDEPEND="
+ dev-libs/hidapi
+ virtual/libelf:=
+ virtual/libusb:0
+ virtual/libusb:1
+ ftdi? ( dev-embedded/libftdi:1 )
+ readline? ( sys-libs/readline:0= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-alternatives/yacc
+ app-alternatives/lex
+"
+
+src_prepare() {
+ cmake_src_prepare
+
+ # CMAKE_INSTALL_LIBDIR is not respected. Fixed in the next release.
+ sed -i "s@DESTINATION lib@DESTINATION $(get_libdir)@g" \
+ src/CMakeLists.txt || die
+
+ # For some reason 'TYPE SYSCONF' and 'CMAKE_INSTALL_SYSCONFDIR'
+ # prepends '/usr' so the config ends up getting installed as
+ # '/usr/etc/avrdude.conf' which is not correct.
+ sed -i 's@TYPE SYSCONF@DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}@' \
+ src/CMakeLists.txt || die
+}
+
+src_configure() {
+ # Optional libraries like libftdi aren't gated behind options and
+ # find_package calls, but find_library is called directly
+ # instead.
+ #
+ # Set the cache variable to an empty string if we do not want a
+ # library to be automatically detected.
+ local mycmakeargs=(
+ -DBUILD_DOC=OFF # This currently does nothing...
+ -DBUILD_SHARED_LIBS=ON
+ -DDEBUG_CMAKE=ON
+ -DHAVE_LIBGPIOD='' # Bug #921301
+ -DHAVE_LIBFTDI=''
+ -DHAVE_LINUXGPIO=ON # Seems like there is no reason to have this off.
+ -DHAVE_LINUXSPI=ON # Ditto.
+ -DHAVE_PARPORT=ON
+ )
+ use ftdi || mycmakeargs+=( -DHAVE_LIBFTDI1='' )
+ use readline || mycmakeargs+=( -DHAVE_LIBREADLINE='' )
+ cmake_src_configure
+}
diff --git a/dev-embedded/avrdude/metadata.xml b/dev-embedded/avrdude/metadata.xml
index b9a0b133cefe..4b3b9dad10e3 100644
--- a/dev-embedded/avrdude/metadata.xml
+++ b/dev-embedded/avrdude/metadata.xml
@@ -8,6 +8,9 @@
<use>
<flag name="ftdi">Enable support for USB FTDI chips via <pkg>dev-embedded/libftdi</pkg></flag>
</use>
+ <slots>
+ <subslots>reflect soname of libavrdude</subslots>
+ </slots>
<upstream>
<remote-id type="github">avrdudes/avrdude</remote-id>
</upstream>
diff --git a/dev-embedded/dc-tool-ip/dc-tool-ip-1.0.4.ebuild b/dev-embedded/dc-tool-ip/dc-tool-ip-1.0.4.ebuild
index ff03cd024553..b22260ee7ac7 100644
--- a/dev-embedded/dc-tool-ip/dc-tool-ip-1.0.4.ebuild
+++ b/dev-embedded/dc-tool-ip/dc-tool-ip-1.0.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,7 +6,7 @@ EAPI=7
inherit flag-o-matic toolchain-funcs
DESCRIPTION="Ethernet program loader for the Dreamcast"
-HOMEPAGE="http://cadcdev.sourceforge.net/"
+HOMEPAGE="https://cadcdev.sourceforge.net/"
SRC_URI="mirror://sourceforge/cadcdev/dcload-ip-${PV}-src.tar.gz"
LICENSE="GPL-2"
diff --git a/dev-embedded/dfu-programmer/Manifest b/dev-embedded/dfu-programmer/Manifest
index d9a61307447b..e6b8052c77d5 100644
--- a/dev-embedded/dfu-programmer/Manifest
+++ b/dev-embedded/dfu-programmer/Manifest
@@ -1 +1 @@
-DIST dfu-programmer-0.7.2.tar.gz 146613 BLAKE2B 85222185bdbfdb90c06ece2a284f6f6e15fe5118a1934948a0bca6364902743a86429ea13d5aabc2a948f6f2ce41177b6021ae85a8ad22b75a026507253380d8 SHA512 429b89192bb5a9653ad8678dfc182bfc30eb057d0d1f72fe88efdf85005d3ad557e0f572f4fad3346f1f1078cd273a289f4bba2663bb1f840e6bf724d5293db4
+DIST dfu-programmer-1.0.0.tar.gz 78504 BLAKE2B ae05a92c95a17ee9b5e2266e380c43d0cdadb3be76e481eb5de321116aa1d930c733ad3a086e239b817a475d36185157715e7907d564c2001a9ce25df01d46c6 SHA512 abb73970e10017f111b118c5be0b98a3fe7ef8c95794b5ca701f21b5a40f518f46ff8a392f09e7eea2ad9a4eb6c43ecc9514bee817c01acf0d6135a5f8f9048f
diff --git a/dev-embedded/dfu-programmer/dfu-programmer-0.7.2-r1.ebuild b/dev-embedded/dfu-programmer/dfu-programmer-1.0.0.ebuild
index fc823eeb789a..9f6025c857fd 100644
--- a/dev-embedded/dfu-programmer/dfu-programmer-0.7.2-r1.ebuild
+++ b/dev-embedded/dfu-programmer/dfu-programmer-1.0.0.ebuild
@@ -1,35 +1,35 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit toolchain-funcs udev
+inherit autotools udev
DESCRIPTION="A Device Firmware Update based USB programmer for Atmel chips"
-HOMEPAGE="http://dfu-programmer.sourceforge.net"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+HOMEPAGE="
+ https://dfu-programmer.github.io/
+ https://sourceforge.net/projects/dfu-programmer/
+ https://github.com/dfu-programmer/dfu-programmer
+"
+
+SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 arm ~arm64"
-IUSE=""
RDEPEND="
acct-group/plugdev
virtual/libusb:1
- virtual/udev"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
+ virtual/udev
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
src_prepare() {
default
- # Upstream has fixed this in their configure already.
- tc-export CPP PKG_CONFIG
- sed -i \
- -e "/LIBUSB_1_0_CFLAGS=/s:=.*:='$(${PKG_CONFIG} --cflags libusb-1.0)':" \
- -e "/LIBUSB_1_0_LIBS=/s:=.*:='$(${PKG_CONFIG} --libs libusb-1.0)':" \
- configure || die
+ eautoreconf
}
src_install() {
@@ -47,7 +47,13 @@ src_install() {
}
pkg_postinst() {
+ udev_reload
+
elog "To update device firmware as user you must be in the plugdev group:"
elog
elog "usermod -aG plugdev <user>"
}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/dev-embedded/dfu-programmer/metadata.xml b/dev-embedded/dfu-programmer/metadata.xml
index 44ef01106a0a..f5df457efa6e 100644
--- a/dev-embedded/dfu-programmer/metadata.xml
+++ b/dev-embedded/dfu-programmer/metadata.xml
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="sourceforge">dfu-programmer</remote-id>
+ <remote-id type="github">dfu-programmer/dfu-programmer</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-embedded/esptool/Manifest b/dev-embedded/esptool/Manifest
index db7d9a065f42..558ae5bb4b79 100644
--- a/dev-embedded/esptool/Manifest
+++ b/dev-embedded/esptool/Manifest
@@ -1,4 +1,2 @@
-DIST esptool-3.3.1.tar.gz 7261340 BLAKE2B c6ee391dcbc331d9f931bfd969333fc3bfc5628d422d52e2963c9d465f4680dca5debaf17cd2f6aca0db9dcc06563fe775d7d6c15dacdff481c52577c26d4364 SHA512 8da34f7b555513d499141ce403f19c3e77b6944eecde440c757faf3bbf5e915e44ff0bcabf1b2cb7f5fe26caa717bb47104ad808c46feaf1dea254d548048095
-DIST esptool-3.3.2.tar.gz 7263375 BLAKE2B 8a24a94c5d8acaa9647a5057cbacb57bdf292651529572d7084dbee1013b6174a383bebacccd75bb08e6de94054f28303d5a9b182f0d30dad9081fd8d61d1c4d SHA512 9f31ab5b702c8aede2062a27943fa655d7fbb07fb4c4c377f2ab5552e5453e7c8126bacc5b8e1e859ee6b81e21a75ed1343639815e395b974cc1aaa005367d84
-DIST esptool-4.2.1.tar.gz 7271498 BLAKE2B af1c17e08cad057e4534599481da6366460e9eff02de0dfe1cd1163885d315cefd780e034550e7cf09f09f4f3430108675722b9a57109a94c5519bf0c0c158b2 SHA512 b2b7209371330ae0764da5650b48a37ec750a3514951b8e39576b4e54ea682e2a43faf56ce95327071fe88bf4f74762a39483e1edfe2bdf9c5457537888c469f
-DIST esptool-4.3.tar.gz 7216987 BLAKE2B 9c48b6884667913b5ffe8d0bef22fcb27142a42a89c802f2f1f2f5355d1a967c398f86a398574310fcb1de5b37a1f5fb7e9e7f78058e5ad38008b097d8debd66 SHA512 aa761dae802d67553096698b40a97ae1fa33995dbc81a16a521ffa3ed1ec87470b1457853e4a1aaedfb94c46770e58712a25cac62a4bd05d85503881e507b493
+DIST esptool-4.6.2.tar.gz 7003860 BLAKE2B 051689dbc2194e1ed08467f9ec82e3a48e31cf62c25b83f97e3b05a1d203c9dda120cbb11a40bb61efe076ae8449d0b9b4742b19d59efef205132f05d16130a5 SHA512 97cc9f4d92b479351089fac59aed08f9519ff76d994ddae601da8e39b988f4bb90dc3885bf30b7998e2575a0365a5f0eef85f16a28b12eb944eec1e9f5265c6c
+DIST esptool-4.7.0.tar.gz 7045501 BLAKE2B 468d83db541e632296e9b465d54764dc5e966f54709b66b0af2675d8fbd6d0bcd70fb18584887f3dc4d45bd0550b65a0da58d0c6bc318962b8798017b4ab0b63 SHA512 dda2af5d9b2f8a4ec5706eaf58021e95094c152380c732074809c370a5d1bfaeb424cb27f69a3b980dec83ae9c4c9ee1eddfeb0a7990c3b1f1494160a2d369cc
diff --git a/dev-embedded/esptool/esptool-3.3.1.ebuild b/dev-embedded/esptool/esptool-3.3.1.ebuild
deleted file mode 100644
index fb5d371d3bb7..000000000000
--- a/dev-embedded/esptool/esptool-3.3.1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 2021-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-DISTUTILS_SINGLE_IMPL=1
-
-inherit distutils-r1
-
-DESCRIPTION="Utility to communicate with the ROM bootloader in Espressif ESP8266 and ESP32"
-HOMEPAGE="https://github.com/espressif/esptool"
-SRC_URI="https://github.com/espressif/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- $(python_gen_cond_dep '
- dev-python/bitstring[${PYTHON_USEDEP}]
- dev-python/cryptography[${PYTHON_USEDEP}]
- >=dev-python/ecdsa-0.16.0[${PYTHON_USEDEP}]
- dev-python/pyserial[${PYTHON_USEDEP}]
- dev-python/reedsolomon[${PYTHON_USEDEP}]
- ')
-"
-BDEPEND="
- $(python_gen_cond_dep '
- dev-python/wheel[${PYTHON_USEDEP}]
- ')
- test? ( $(python_gen_cond_dep '
- dev-python/coverage[${PYTHON_USEDEP}]
- dev-python/pyelftools[${PYTHON_USEDEP}]
- ') )
-"
-
-python_test() {
- "${EPYTHON}" test/test_imagegen.py || die "imagegen test failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espsecure.py || die "espsecure test failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py || die "espefuse_host test failed with ${EPYTHON}"
- "${EPYTHON}" test/test_merge_bin.py || die "espefuse_host test failed with ${EPYTHON}"
- # test/test_esptool.py and test/test_espefuse.py need real hardware connected
-}
diff --git a/dev-embedded/esptool/esptool-3.3.2.ebuild b/dev-embedded/esptool/esptool-3.3.2.ebuild
deleted file mode 100644
index 80fed540a0c6..000000000000
--- a/dev-embedded/esptool/esptool-3.3.2.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2021-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..11} )
-DISTUTILS_USE_PEP517=setuptools
-DISTUTILS_SINGLE_IMPL=1
-
-inherit distutils-r1
-
-DESCRIPTION="Utility to communicate with the ROM bootloader in Espressif ESP8266 and ESP32"
-HOMEPAGE="https://github.com/espressif/esptool"
-SRC_URI="https://github.com/espressif/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- $(python_gen_cond_dep '
- dev-python/bitstring[${PYTHON_USEDEP}]
- dev-python/cryptography[${PYTHON_USEDEP}]
- >=dev-python/ecdsa-0.16.0[${PYTHON_USEDEP}]
- dev-python/pyserial[${PYTHON_USEDEP}]
- dev-python/reedsolomon[${PYTHON_USEDEP}]
- ')
-"
-BDEPEND="
- $(python_gen_cond_dep '
- dev-python/wheel[${PYTHON_USEDEP}]
- ')
- test? ( $(python_gen_cond_dep '
- dev-python/coverage[${PYTHON_USEDEP}]
- dev-python/pyelftools[${PYTHON_USEDEP}]
- ') )
-"
-
-python_test() {
- "${EPYTHON}" test/test_imagegen.py || die "imagegen test failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espsecure.py || die "espsecure test failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py || die "espefuse_host test failed with ${EPYTHON}"
- "${EPYTHON}" test/test_merge_bin.py || die "espefuse_host test failed with ${EPYTHON}"
- # test/test_esptool.py and test/test_espefuse.py need real hardware connected
-}
diff --git a/dev-embedded/esptool/esptool-4.3.ebuild b/dev-embedded/esptool/esptool-4.3.ebuild
deleted file mode 100644
index ca87dabe0042..000000000000
--- a/dev-embedded/esptool/esptool-4.3.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2021-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..11} )
-DISTUTILS_USE_PEP517=setuptools
-DISTUTILS_SINGLE_IMPL=1
-
-inherit distutils-r1
-
-DESCRIPTION="Utility to communicate with the ROM bootloader in Espressif ESP8266 and ESP32"
-HOMEPAGE="https://github.com/espressif/esptool"
-SRC_URI="https://github.com/espressif/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- $(python_gen_cond_dep '
- dev-python/bitstring[${PYTHON_USEDEP}]
- dev-python/cryptography[${PYTHON_USEDEP}]
- >=dev-python/ecdsa-0.16.0[${PYTHON_USEDEP}]
- dev-python/pyserial[${PYTHON_USEDEP}]
- dev-python/reedsolomon[${PYTHON_USEDEP}]
- ')
-"
-BDEPEND="
- $(python_gen_cond_dep '
- dev-python/wheel[${PYTHON_USEDEP}]
- ')
- test? ( $(python_gen_cond_dep '
- dev-python/cffi[${PYTHON_USEDEP}]
- dev-python/coverage[${PYTHON_USEDEP}]
- dev-python/pyelftools[${PYTHON_USEDEP}]
- ') )
-"
-
-python_test() {
- "${EPYTHON}" test/test_imagegen.py || die "test_imagegen.py failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espsecure.py || die "test_espsecure.py failed with ${EPYTHON}"
- "${EPYTHON}" test/test_merge_bin.py || die "test_merge_bin.py failed with ${EPYTHON}"
- "${EPYTHON}" test/test_image_info.py || die "test_image_info.py failed with ${EPYTHON}"
- "${EPYTHON}" test/test_modules.py || die "test_modules.py failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py esp32|| die "test_espefuse_host.py esp32 failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py esp32c2 || die "test_espefuse_host.py esp32c2 failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py esp32c3 || die "test_espefuse_host.py esp32c3 failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py esp32s2 || die "test_espefuse_host.py esp32s2 failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py esp32s3 || die "test_espefuse_host.py esp32s3 failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py esp32s3beta2 || die "test_espefuse_host.py esp32s3beta2 failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py esp32h2beta1 || die "test_espefuse_host.py esp32h2beta1 failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py esp32c6 || die "test_espefuse_host.py esp32c6 failed with ${EPYTHON}"
- # test/test_esptool.py and test/test_espefuse.py need real hardware connected
-}
-
-pkg_postinst() {
- if ver_test ${REPLACING_VERSIONS} -lt 4; then
- ewarn "${P} - new 4.x release with breaking changes:"
- ewarn " - Public API has been defined by limiting access to internals that have been refactored into multiple source files"
- ewarn " - If active security features are detected, the default behavior changes to prevent unintentional bricking"
- ewarn " - Flash parameters in an image header can now be changed only when no SHA256 digest is appended"
- ewarn " - The ESP8684 alias has been removed, ESP32-C2 has to be used"
- ewarn " - Megabit flash sizes have been deprecated, use megabyte units from now on"
- fi
-}
diff --git a/dev-embedded/esptool/esptool-4.2.1.ebuild b/dev-embedded/esptool/esptool-4.6.2.ebuild
index 16c7d1459d52..c72cc6a73f0f 100644
--- a/dev-embedded/esptool/esptool-4.2.1.ebuild
+++ b/dev-embedded/esptool/esptool-4.6.2.ebuild
@@ -1,9 +1,10 @@
-# Copyright 2021-2022 Gentoo Authors
+# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{9..11} )
+DISTUTILS_USE_PEP517=setuptools
DISTUTILS_SINGLE_IMPL=1
inherit distutils-r1
@@ -15,8 +16,6 @@ SRC_URI="https://github.com/espressif/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
RDEPEND="
$(python_gen_cond_dep '
@@ -24,7 +23,8 @@ RDEPEND="
dev-python/cryptography[${PYTHON_USEDEP}]
>=dev-python/ecdsa-0.16.0[${PYTHON_USEDEP}]
dev-python/pyserial[${PYTHON_USEDEP}]
- dev-python/reedsolomon[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/reedsolo[${PYTHON_USEDEP}]
')
"
BDEPEND="
@@ -33,18 +33,24 @@ BDEPEND="
')
test? ( $(python_gen_cond_dep '
dev-python/cffi[${PYTHON_USEDEP}]
- dev-python/coverage[${PYTHON_USEDEP}]
dev-python/pyelftools[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
') )
"
-python_test() {
- "${EPYTHON}" test/test_imagegen.py || die "test_imagegen.py failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espsecure.py || die "test_espsecure.py failed with ${EPYTHON}"
- "${EPYTHON}" test/test_espefuse_host.py || die "test_espefuse_host.py failed with ${EPYTHON}"
- "${EPYTHON}" test/test_merge_bin.py || die "test_merge_bin.py failed with ${EPYTHON}"
- "${EPYTHON}" test/test_modules.py || die "test_modules.py failed with ${EPYTHON}"
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
# test/test_esptool.py and test/test_espefuse.py need real hardware connected
+ test/test_esptool.py
+ test/test_espefuse.py
+)
+
+src_prepare() {
+ default
+
+ # test_espsecure_hsm.py needs setup of a "Soft HSM" or real hardware. remove.
+ rm test/test_espsecure_hsm.py || die
}
pkg_postinst() {
diff --git a/dev-embedded/esptool/esptool-4.7.0-r2.ebuild b/dev-embedded/esptool/esptool-4.7.0-r2.ebuild
new file mode 100644
index 000000000000..1788d7b8b0a1
--- /dev/null
+++ b/dev-embedded/esptool/esptool-4.7.0-r2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION="Utility to communicate with the ROM bootloader in Espressif ESP8266 and ESP32"
+HOMEPAGE="https://github.com/espressif/esptool"
+SRC_URI="https://github.com/espressif/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/bitstring[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ >=dev-python/ecdsa-0.16.0[${PYTHON_USEDEP}]
+ dev-python/intelhex[${PYTHON_USEDEP}]
+ dev-python/pyserial[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/reedsolo[${PYTHON_USEDEP}]
+ ')
+"
+BDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/wheel[${PYTHON_USEDEP}]
+ ')
+ test? ( $(python_gen_cond_dep '
+ dev-python/cffi[${PYTHON_USEDEP}]
+ dev-python/pyelftools[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ ') )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # test/test_esptool.py and test/test_espefuse.py need real hardware connected
+ test/test_esptool.py
+ test/test_espefuse.py
+)
+
+src_prepare() {
+ default
+
+ # test_espsecure_hsm.py needs setup of a "Soft HSM" or real hardware. remove.
+ rm test/test_espsecure_hsm.py || die
+}
+
+pkg_postinst() {
+ if ver_test ${REPLACING_VERSIONS} -lt 4; then
+ ewarn "${P} - new 4.x release with breaking changes:"
+ ewarn " - Public API has been defined by limiting access to internals that have been refactored into multiple source files"
+ ewarn " - If active security features are detected, the default behavior changes to prevent unintentional bricking"
+ ewarn " - Flash parameters in an image header can now be changed only when no SHA256 digest is appended"
+ ewarn " - The ESP8684 alias has been removed, ESP32-C2 has to be used"
+ ewarn " - Megabit flash sizes have been deprecated, use megabyte units from now on"
+ fi
+}
diff --git a/dev-embedded/gpsim/Manifest b/dev-embedded/gpsim/Manifest
index de73cfa39cd9..7e935d1c1b8f 100644
--- a/dev-embedded/gpsim/Manifest
+++ b/dev-embedded/gpsim/Manifest
@@ -1 +1,2 @@
DIST gpsim-0.31.0.tar.gz 3454179 BLAKE2B 449f891c7a765ce06da87c8de1a8adc0d7e15c9af175fc2988d604660108c14cc816247358a71bbb55813c5144f6973c01d3c9c27c44f2a45820b85cedc97d2c SHA512 a6af7e9170cee11c35f0e4731d39876e563edd8ca9cbd0f4b3017f224e5317b4c8bcc8aa4468102fa5c11157f487b6c7354e3aba8778842ed0b5be9bbb9ef45f
+DIST gpsim-0.32.1.tar.gz 3770485 BLAKE2B 0720ffa7dee073573f3d053367714752dda25e99293d803ff32e4050f8ad5a14241de8fb273fb78ddf2fc927c9d209564d43a28a25489f38fb93dbefe09e51f4 SHA512 9b6d24f8f183eb421506a3c08883915f3580999b9ee7742c4af2d61e7d84643d125e3b4e1c3412bcb4a312011d7b6fef44c12d22fcc475f66a1f083e394e5623
diff --git a/dev-embedded/gpsim/gpsim-0.31.0.ebuild b/dev-embedded/gpsim/gpsim-0.31.0.ebuild
index 702af55fcda2..78da145b04fc 100644
--- a/dev-embedded/gpsim/gpsim-0.31.0.ebuild
+++ b/dev-embedded/gpsim/gpsim-0.31.0.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="A simulator for the Microchip PIC microcontrollers"
-HOMEPAGE="http://gpsim.sourceforge.net"
+HOMEPAGE="https://gpsim.sourceforge.net"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
@@ -20,7 +20,7 @@ RDEPEND="
"
DEPEND="${RDEPEND}"
BDEPEND="
- sys-devel/flex
+ app-alternatives/lex
virtual/pkgconfig
app-alternatives/yacc
"
diff --git a/dev-embedded/gpsim/gpsim-0.32.1.ebuild b/dev-embedded/gpsim/gpsim-0.32.1.ebuild
new file mode 100644
index 000000000000..906cf84288a9
--- /dev/null
+++ b/dev-embedded/gpsim/gpsim-0.32.1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="A simulator for the Microchip PIC microcontrollers"
+HOMEPAGE="https://gpsim.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 x86"
+
+RDEPEND="
+ >=dev-embedded/gputils-0.12
+ dev-libs/glib:2
+ dev-libs/popt
+ sys-libs/readline:0=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-alternatives/lex
+ virtual/pkgconfig
+ app-alternatives/yacc
+"
+DOCS=( ANNOUNCE AUTHORS ChangeLog HISTORY PROCESSORS README README.MODULES \
+ TODO doc/gpsim.pdf )
+HTML_DOCS=( doc/gpsim.html.LyXconv/gpsim.html )
+
+src_configure() {
+ local myeconfargs=(
+ --disable-gui
+ --disable-static
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/dev-embedded/gputils/Manifest b/dev-embedded/gputils/Manifest
index 91bfb2d62d21..007cca7187a7 100644
--- a/dev-embedded/gputils/Manifest
+++ b/dev-embedded/gputils/Manifest
@@ -1 +1 @@
-DIST gputils-1.5.0.tar.gz 13155377 BLAKE2B 68f6ed2ba93f83eaae0573dde5fe8d3a67ec6cf4349832e5edcab70ec35db7d8210f28d46bf3272a7b7f9b52299b1289792b1ca2a75b952e7ea2fc263448c8b9 SHA512 fc74e92ddfe2c9c7ee272a712a411bf01790358c310afc9a802f503902675fa4717410354bf8791f64da45b63f0b1f562b55fdd7127d3989f4295ebe5f80b645
+DIST gputils-1.5.2.tar.bz2 7231711 BLAKE2B c52bd75ee408b2ff98f63679b18834e8e41b5aea4f2b4b659860acb8fa4dd3f922aa6307f99ae0fc024a4fc6f56d3be262cd873cf112ebac444d41eeca635d3b SHA512 43ed508d164152bf36e4f27b09656e6e3d58fc174806ad57d6415e6e2726a56381b1323be3acfc635f2a05babade695e9777b0db8b5f4b90da00b9d29e75eddc
diff --git a/dev-embedded/gputils/files/gputils-1.5.0-respect-flags.patch b/dev-embedded/gputils/files/gputils-1.5.0-respect-flags.patch
deleted file mode 100644
index 01d13dedab0f..000000000000
--- a/dev-embedded/gputils/files/gputils-1.5.0-respect-flags.patch
+++ /dev/null
@@ -1,123 +0,0 @@
-https://sourceforge.net/p/gputils/code/1288
-https://bugs.gentoo.org/722648
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -160,29 +160,41 @@
- AC_CHECK_FUNCS(strndup, , [IBERTYOBJS="$IBERTYOBJS strndup.o"])
- AC_CHECK_FUNCS(strverscmp, , [IBERTYOBJS="$IBERTYOBJS strverscmp.o"])
-
--AM_CFLAGS=
-+VERSION_MAJOR=`echo $PACKAGE_VERSION | $AWK 'BEGIN {FS="."} {print $1}'`
-+VERSION_MINOR=`echo $PACKAGE_VERSION | $AWK 'BEGIN {FS="."} {print $2}'`
-+VERSION_MICRO=`echo $PACKAGE_VERSION | $AWK 'BEGIN {FS="."} {print $3}'`
-+
-+AC_DEFINE_UNQUOTED(GPUTILS_VERSION_MAJOR, $VERSION_MAJOR, [gputils major version number])
-+AC_DEFINE_UNQUOTED(GPUTILS_VERSION_MINOR, $VERSION_MINOR, [gputils minor version number])
-+AC_DEFINE_UNQUOTED(GPUTILS_VERSION_MICRO, $VERSION_MICRO, [gputils micro version number])
-+AC_DEFINE_UNQUOTED(GPUTILS_VERSION_STR, "$PACKAGE_VERSION", [gputils version string])
-+
-+AM_GPUTILS_SVN_VERSION="\$(shell \$(top_srcdir)/get_cl_revision.sh \$(top_srcdir)/ChangeLog)"
-+AM_PACKAGE_SVN_VERSION=`./get_cl_revision.sh ChangeLog`
-+
-+AM_CFLAGS="-DGPUTILS_SVN_VERSION=\$(AM_GPUTILS_SVN_VERSION)"
- AM_LDFLAGS=
-
- # Options for the system on which the package will run.
- case "${host}" in
- *cygwin* )
- if test "x$GCC" = "xyes"; then
-- AM_CFLAGS="-Wall -pedantic"
-+ AM_CFLAGS="$AM_CFLAGS -Wall -pedantic"
- AM_LDFLAGS="-Wl,-warn-common -Wl,-warn-once"
- fi
- ;;
- *darwin* )
- if test "x$CC" = "xclang"; then
-- AM_CFLAGS="-Wall -pedantic -Wformat -Wtautological-compare -Wimplicit-function-declaration -Wformat-security"
-+ AM_CFLAGS="$AM_CFLAGS -Wall -pedantic -Wformat -Wtautological-compare -Wimplicit-function-declaration -Wformat-security"
- fi
- ;;
- *linux* )
- if test "x$CC" = "xclang"; then
-- AM_CFLAGS="-Wall -pedantic -Wformat -Wtautological-compare -Wimplicit-function-declaration -Wformat-security"
-+ AM_CFLAGS="$AM_CFLAGS -Wall -pedantic -Wformat -Wtautological-compare -Wimplicit-function-declaration -Wformat-security"
- AM_LDFLAGS="-Wl,-warn-common -Wl,-warn-once"
- else
- if test "x$GCC" = "xyes"; then
-- AM_CFLAGS="-Wall -pedantic -Wformat -Wimplicit-function-declaration -Wformat-security"
-+ AM_CFLAGS="$AM_CFLAGS -Wall -pedantic -Wformat -Wimplicit-function-declaration -Wformat-security"
- AM_LDFLAGS="-Wl,-warn-common -Wl,-warn-once"
- fi
- fi
-@@ -192,33 +204,20 @@
- *-pc-os2_emx | *-pc-os2-emx )
- EXEEXT=".exe"
- if test "x$GCC" = "xyes"; then
-- AM_CFLAGS="-Zcrtdll"
-+ AM_CFLAGS="$AM_CFLAGS -Zcrtdll"
- fi
- ;;
- *sun* )
- # sunos cc needs the -xCC flag for // comments
- if test "x$GCC" != "xyes"; then
-- AM_CFLAGS="-xCC"
-+ AM_CFLAGS="$AM_CFLAGS -xCC"
- fi
- ;;
- esac
--
--VERSION_MAJOR=`echo $PACKAGE_VERSION | $AWK 'BEGIN {FS="."} {print $1}'`
--VERSION_MINOR=`echo $PACKAGE_VERSION | $AWK 'BEGIN {FS="."} {print $2}'`
--VERSION_MICRO=`echo $PACKAGE_VERSION | $AWK 'BEGIN {FS="."} {print $3}'`
--
--AC_DEFINE_UNQUOTED(GPUTILS_VERSION_MAJOR, $VERSION_MAJOR, [gputils major version number])
--AC_DEFINE_UNQUOTED(GPUTILS_VERSION_MINOR, $VERSION_MINOR, [gputils minor version number])
--AC_DEFINE_UNQUOTED(GPUTILS_VERSION_MICRO, $VERSION_MICRO, [gputils micro version number])
--AC_DEFINE_UNQUOTED(GPUTILS_VERSION_STR, "$PACKAGE_VERSION", [gputils version string])
--
--AM_GPUTILS_SVN_VERSION="\$(shell \$(top_srcdir)/get_cl_revision.sh \$(top_srcdir)/ChangeLog)"
--AM_PACKAGE_SVN_VERSION=`./get_cl_revision.sh ChangeLog`
--CFLAGS="-DGPUTILS_SVN_VERSION=\$(AM_GPUTILS_SVN_VERSION)"
-
- # Host filesystem options.
- case "${host}" in
-- *mingw* | *-pc-os2_emx | *-pc-os2-emx | *djgpp*)
-+ *mingw* | *-pc-os2_emx | *-pc-os2-emx | *djgpp* )
- AC_DEFINE(HAVE_DOS_BASED_FILE_SYSTEM, 1,
- [Define if your host uses a DOS based file system.])
- ;;
-@@ -231,15 +230,13 @@
- fi
-
- if test x$enable_gdb_debuginfo = xyes; then
-- CFLAGS="$CFLAGS -ggdb"
-+ AM_CFLAGS="$AM_CFLAGS -ggdb"
- fi
-
- if test x$enable_gputils_path = xyes; then
- AC_DEFINE(USE_DEFAULT_PATHS, 1,
- [Define if you want to add default search paths.])
- fi
--
--LDFLAGS=
-
- # Substitute configuration variables.
- AC_SUBST(ENABLE_HTML_DOC)
-@@ -248,8 +245,6 @@
- AC_SUBST(AM_PACKAGE_SVN_VERSION)
- AC_SUBST(AM_CFLAGS)
- AC_SUBST(AM_LDFLAGS)
--AC_SUBST(CFLAGS)
--AC_SUBST(LDFLAGS)
- AC_SUBST(GPUTILS_HEADER_PATH)
- AC_SUBST(GPUTILS_LKR_PATH)
- AC_SUBST(GPUTILS_LIB_PATH)
-@@ -301,6 +296,7 @@
- Source directory: $srcdir
- Installation prefix: $prefix
- C compiler: $CC $AM_CFLAGS $CFLAGS
-+ C linker: $CC $AM_LDFLAGS
- Location of MPLAB-X: $DEFAULT_MPLABX_PATH
-
- ])
diff --git a/dev-embedded/gputils/files/gputils-1.5.2-fix-invalid-operator.patch b/dev-embedded/gputils/files/gputils-1.5.2-fix-invalid-operator.patch
new file mode 100644
index 000000000000..ec2d8d425832
--- /dev/null
+++ b/dev-embedded/gputils/files/gputils-1.5.2-fix-invalid-operator.patch
@@ -0,0 +1,25 @@
+Fix invalid operator in dash
+
+Some shells, like dash, don't support [ x == x ], reporting invalid syntax,
+and silently failing.
+
+--- gputils-1.5.2.orig/doc/html-help/Makefile.am
++++ gputils-1.5.2/doc/html-help/Makefile.am
+@@ -7,7 +7,7 @@
+ pkgdatadir = @GPUTILS_HTMLDOC_PATH@
+
+ html-doc:
+- if [ "$(ENABLE_HTML_DOC)" == "yes" ]; then \
++ if [ "$(ENABLE_HTML_DOC)" = "yes" ]; then \
+ if [ ! -e $(DEFAULT_MPLABX_PATH)/mpasmx/8bit_device.info ]; then \
+ @echo "Can't find mplabx installation; HTML documentation will not be built."; \
+ else \
+@@ -18,7 +18,7 @@
+ install: install-html
+
+ install-html:
+- if [ "$(ENABLE_HTML_DOC)" == "yes" ]; then \
++ if [ "$(ENABLE_HTML_DOC)" = "yes" ]; then \
+ if [ -n "$$(ls *.html 2>/dev/null)" -a -n "$$(ls *.css 2>/dev/null)" ]; then \
+ $(install_sh) -d "$(DESTDIR)$(pkgdatadir)"; \
+ $(install_sh) -c -m 644 *.css *.html "$(DESTDIR)$(pkgdatadir)"; \
diff --git a/dev-embedded/gputils/gputils-1.5.0.ebuild b/dev-embedded/gputils/gputils-1.5.2.ebuild
index 508c9285573c..c3118abad87d 100644
--- a/dev-embedded/gputils/gputils-1.5.0.ebuild
+++ b/dev-embedded/gputils/gputils-1.5.2.ebuild
@@ -1,26 +1,25 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit autotools toolchain-funcs
+inherit autotools toolchain-funcs flag-o-matic
DESCRIPTION="Tools including assembler, linker and librarian for PIC microcontrollers"
HOMEPAGE="https://gputils.sourceforge.io"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ppc ppc64 x86"
+KEYWORDS="amd64 ~arm64 ppc ppc64 x86"
+IUSE="doc"
PATCHES=(
- "${FILESDIR}"/${P}-respect-flags.patch
+ "${FILESDIR}"/gputils-1.5.2-fix-invalid-operator.patch
)
src_prepare() {
default
-
- # Only needed for the flags patch, if a new release ever comes...
eautoreconf
}
@@ -32,11 +31,17 @@ src_configure() {
# compiler selection. Force our own defaults instead.
tc-export CC
- econf
+ # LTO currently causes various segfaults in dev-embedded/sdcc
+ # sys-devel/gcc-11.3.0 '-O3 -flto'
+ filter-lto
+
+ local myeconfargs=(
+ $(use_enable doc html-doc)
+ )
+ econf "${myeconfargs[@]}"
}
src_install() {
default
-
- dodoc doc/gputils.pdf
+ use doc && dodoc doc/gputils.pdf
}
diff --git a/dev-embedded/icdprog/icdprog-0.5.ebuild b/dev-embedded/icdprog/icdprog-0.5.ebuild
index 41a887a64a6d..a177b703b1a2 100644
--- a/dev-embedded/icdprog/icdprog-0.5.ebuild
+++ b/dev-embedded/icdprog/icdprog-0.5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,7 +6,7 @@ EAPI=7
inherit toolchain-funcs
DESCRIPTION="Microchip PIC Programmer using ICD hardware"
-HOMEPAGE="http://icdprog.sf.net/"
+HOMEPAGE="https://icdprog.sf.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
diff --git a/dev-embedded/include/include-0.4.2.ebuild b/dev-embedded/include/include-0.4.2.ebuild
index dfa827f0951c..4ea322985dfe 100644
--- a/dev-embedded/include/include-0.4.2.ebuild
+++ b/dev-embedded/include/include-0.4.2.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="A collection of useful, independent include files for C/Assembler developers"
-HOMEPAGE="http://openwince.sourceforge.net/include/"
+HOMEPAGE="https://openwince.sourceforge.net/include/"
SRC_URI="mirror://sourceforge/openwince/${P}.tar.bz2"
LICENSE="BSD"
diff --git a/dev-embedded/jal/files/jal-0.4.62-fix-incompatible-integer-to-pointer-clang16.patch b/dev-embedded/jal/files/jal-0.4.62-fix-incompatible-integer-to-pointer-clang16.patch
new file mode 100644
index 000000000000..77536e0fefac
--- /dev/null
+++ b/dev-embedded/jal/files/jal-0.4.62-fix-incompatible-integer-to-pointer-clang16.patch
@@ -0,0 +1,22 @@
+Bug: https://bugs.gentoo.org/883243
+--- a/jal/treerep.c
++++ b/jal/treerep.c
+@@ -892,7 +892,7 @@ tree new_asm(loc_t loc, opcode_t opcode, tree arg1, int arg2)
+
+
+ if (code_has(p->opcode, field_flabel)) {
+- assert_pointer(NULL, arg2);
++ assert_pointer(NULL, (void *)arg2);
+ p->next = new_const(new_value(type_universal, arg2));
+ }
+
+--- a/jal/treetools.c
++++ b/jal/treetools.c
+@@ -600,7 +600,6 @@ tree arg(tree p, int n, boolean must_find)
+ #endif
+ assert_kind(p->loc, p, node_procedure);
+ /* jal_assert(p->loc, n > 0); */
+- assert_pointer(p->loc, n > 0);
+ p = p->first;
+ assert_pointer(NULL, p);
+
diff --git a/dev-embedded/jal/jal-0.4.62-r1.ebuild b/dev-embedded/jal/jal-0.4.62-r1.ebuild
new file mode 100644
index 000000000000..92343e68b945
--- /dev/null
+++ b/dev-embedded/jal/jal-0.4.62-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="A high-level language for Microchip PIC and Ubicom SX microcontrollers"
+HOMEPAGE="https://jal.sourceforge.net/"
+SRC_URI="mirror://sourceforge/jal/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+S="${WORKDIR}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.4.62-fix-incompatible-integer-to-pointer-clang16.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/dev-embedded/jal/jal-0.4.62.ebuild b/dev-embedded/jal/jal-0.4.62.ebuild
index bd489fc91e3e..0d5e5a8e3c6d 100644
--- a/dev-embedded/jal/jal-0.4.62.ebuild
+++ b/dev-embedded/jal/jal-0.4.62.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="A high-level language for Microchip PIC and Ubicom SX microcontrollers"
-HOMEPAGE="http://jal.sourceforge.net/"
+HOMEPAGE="https://jal.sourceforge.net/"
SRC_URI="mirror://sourceforge/jal/${P}.tar.gz"
LICENSE="GPL-2"
diff --git a/dev-embedded/libdisasm/libdisasm-0.23.ebuild b/dev-embedded/libdisasm/libdisasm-0.23.ebuild
index 732ccd521c0a..efa0c8af8724 100644
--- a/dev-embedded/libdisasm/libdisasm-0.23.ebuild
+++ b/dev-embedded/libdisasm/libdisasm-0.23.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,7 +6,7 @@ EAPI=7
inherit toolchain-funcs
DESCRIPTION="Provides basic disassembly of Intel x86 instructions from a binary stream"
-HOMEPAGE="http://bastard.sourceforge.net/libdisasm.html"
+HOMEPAGE="https://bastard.sourceforge.net/libdisasm.html"
SRC_URI="mirror://sourceforge/project/bastard/${PN}/${PV}/${P}.tar.gz"
LICENSE="Clarified-Artistic"
diff --git a/dev-embedded/libftd2xx/Manifest b/dev-embedded/libftd2xx/Manifest
index 5ad4959cd384..83c2e5289508 100644
--- a/dev-embedded/libftd2xx/Manifest
+++ b/dev-embedded/libftd2xx/Manifest
@@ -1,3 +1,3 @@
-DIST libftd2xx-arm-v6-hf-1.4.8.tar.gz 882724 BLAKE2B 4ffe647272467698cfe10a2ef201f8adb4bc991df517945ee8f057a07e55c4804bc4d541b6e2bd523fc4f6375b0a28ae7241fdafaed9eae61739d83d0327540a SHA512 bd07f57f9a75c2195aaf71ed1c229e04256a9c9a59f3d2e8f2111bef8a1c58c05457b5d04d7a8f77f9daf076ce3f0b77e317ff1cedce4e3cd4146422cd5cf634
-DIST libftd2xx-i386-1.4.8.tar.gz 891331 BLAKE2B 742be8418ac598b0c4b6b1e4be99a57c85e70310c2a15936dba3a765b0168eac37a080619ed92816a96f93106f96b812545d1cf212f5d6d32b03e5100870f6a7 SHA512 d66415b9ecdc2b38370c2c6b97e5d14c3891910ceaf5aee2740b2e893891c4f2ebf395960748d55508f4b63edd3d829d9c0020898c1b83b453496d18b4a85528
-DIST libftd2xx-x86_64-1.4.8.tar.gz 898269 BLAKE2B e491b58f66ec64014511469e7eb0a628e799ffa4cc52cb94ca66c082dbc56793e3435a80bde7433ce1bea96eea1a52461606ce78a9b2e447f3f9c5a7faef1f1b SHA512 b738b764bcebb5f93f5a968b266547b8775cbc72df8587bfcf67591ce95557b6a43dce2f5dbd9de451f8c9421ec41c25c8fb9bed37b76aec4cd5bac854d4af06
+DIST libftd2xx-arm-v6-hf-1.4.27.tar.gz 629185 BLAKE2B 31a94f0bfb5fd66c603a1074ac8286f44a35155f77deab4b9f71485249073faa8a2ff4b448baab6153ea9d84e2f89b45629cb8e738e14f066bc847fc0f476b68 SHA512 80ad93a90e4a112f8a58267c9ff80e5483a45d60869eb02fa82a56b452a860ef68f2086ccb51f71a5f4d5b4dbbf30a85a6aac82a7a27b5337b9693535184387b
+DIST libftd2xx-x86_32-1.4.27.tar.gz 645954 BLAKE2B 11c4268f6a5d73609a596fcdf04844a4de1c1647aa713a0aa78fb794d81101020cf06a26e86a72e5aeac68be9133a32fc0b827b644c844a3c1b8e03a8da53e08 SHA512 22623d49eca62d6aebe1c9b1cdd2c74e121983518e5e0a331bbc2375788b19967c9ceb2699ca07b9805930e317172cdfae5c37fba118060a96a2d86f0a19752b
+DIST libftd2xx-x86_64-1.4.27.tar.gz 649157 BLAKE2B 7751002bb5920aa3746b92d5349b93e1c2c205f2c2cf46e73c13a823ce846067adeb07d0416a1b606f9554a703290297e205d30ea3db7e60a1b1189dca963246 SHA512 1eccbd69cd29716c1024f46564fa2c8f4a21795fd432448fed156b55c1f0ad5fc5c869ebd450e82774b65ce96a27f5f34843036c6843f57b083043139aabd38d
diff --git a/dev-embedded/libftd2xx/libftd2xx-1.4.27.ebuild b/dev-embedded/libftd2xx/libftd2xx-1.4.27.ebuild
new file mode 100644
index 000000000000..3a51e746efc3
--- /dev/null
+++ b/dev-embedded/libftd2xx/libftd2xx-1.4.27.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Library that allows a direct access to a USB device"
+HOMEPAGE="https://ftdichip.com/drivers/d2xx-drivers/"
+# NOTE: We could include other arm versions here too.
+SRC_URI="
+ amd64? ( https://ftdichip.com/wp-content/uploads/2022/07/${PN}-x86_64-${PV}.tgz -> ${PN}-x86_64-${PV}.tar.gz )
+ arm? ( https://ftdichip.com/wp-content/uploads/2022/07/${PN}-arm-v6-hf-${PV}.tgz -> ${PN}-arm-v6-hf-${PV}.tar.gz )
+ x86? ( https://ftdichip.com/wp-content/uploads/2022/07/${PN}-x86_32-${PV}.tgz -> ${PN}-x86_32-${PV}.tar.gz )
+"
+S="${WORKDIR}"
+
+LICENSE="FTDI LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="examples"
+
+QA_PREBUILT="*"
+
+src_install() {
+ cd release/build || die
+
+ dolib.so ${PN}.so.${PV}
+ dosym ${PN}.so.${PV} /usr/$(get_libdir)/${PN}.so.${PV:0:1}
+ dosym ${PN}.so.${PV:0:1} /usr/$(get_libdir)/${PN}.so
+ insinto /usr/include
+ doins "${S}"/release/ftd2xx.h "${S}"/release/WinTypes.h
+
+ if use examples ; then
+ docinto sample
+ dodoc -r "${S}"/release/examples
+ fi
+
+ dodoc "${S}"/release/ReadMe.txt
+}
diff --git a/dev-embedded/libftd2xx/libftd2xx-1.4.8.ebuild b/dev-embedded/libftd2xx/libftd2xx-1.4.8.ebuild
deleted file mode 100644
index 7cc07d14af95..000000000000
--- a/dev-embedded/libftd2xx/libftd2xx-1.4.8.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Library that allows a direct access to a USB device"
-HOMEPAGE="https://www.ftdichip.com/drivers/d2xx-drivers/"
-# NOTE: We could include other arm versions here too.
-SRC_URI="
- amd64? ( https://www.ftdichip.com/Drivers/D2XX/Linux/${PN}-x86_64-${PV}.gz -> ${PN}-x86_64-${PV}.tar.gz )
- arm? ( https://www.ftdichip.com/Drivers/D2XX/Linux/${PN}-arm-v6-hf-${PV}.gz -> ${PN}-arm-v6-hf-${PV}.tar.gz )
- x86? ( https://www.ftdichip.com/Drivers/D2XX/Linux/${PN}-i386-${PV}.gz -> ${PN}-i386-${PV}.tar.gz )
-"
-S="${WORKDIR}"
-
-LICENSE="FTDI LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="examples"
-
-QA_PREBUILT="*"
-
-src_install() {
- cd release/build || die
-
- into /opt
- dolib.so ${PN}.so.${PV}
- dosym ${PN}.so.${PV} /opt/$(get_libdir)/${PN}.so.${PV:0:1}
- dosym ${PN}.so.${PV:0:1} /opt/$(get_libdir)/${PN}.so
- insinto /usr/include
- doins "${S}"/release/ftd2xx.h "${S}"/release/WinTypes.h
-
- dodir /etc/env.d
- echo "LDPATH=\"/opt/$(get_libdir)\"" > "${ED}"/etc/env.d/50libftd2xx || die
-
- if use examples ; then
- docinto sample
- dodoc -r "${S}"/release/examples
- fi
-
- dodoc "${S}"/release/ReadMe.txt
-}
diff --git a/dev-embedded/libftd2xx/metadata.xml b/dev-embedded/libftd2xx/metadata.xml
index 85e4ed814fa2..d17e45aea3d5 100644
--- a/dev-embedded/libftd2xx/metadata.xml
+++ b/dev-embedded/libftd2xx/metadata.xml
@@ -1,5 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
+ <maintainer type="person" proxied="yes">
+ <email>vowstar@gmail.com</email>
+ <name>Huang Rui</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>embedded@gentoo.org</email>
+ <name>Embedded Gentoo</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
</pkgmetadata>
diff --git a/dev-embedded/libftdi/libftdi-0.20-r1.ebuild b/dev-embedded/libftdi/libftdi-0.20-r2.ebuild
index c12bf68d6ff9..fc1fb5c7f519 100644
--- a/dev-embedded/libftdi/libftdi-0.20-r1.ebuild
+++ b/dev-embedded/libftdi/libftdi-0.20-r2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{10..11} )
inherit cmake python-single-r1
if [[ ${PV} == 9999* ]] ; then
@@ -11,7 +11,7 @@ if [[ ${PV} == 9999* ]] ; then
EGIT_REPO_URI="git://developer.intra2net.com/${PN}"
else
SRC_URI="https://www.intra2net.com/en/developer/${PN}/download/${P}.tar.gz"
- KEYWORDS="amd64 arm ~arm64 ppc ppc64 ~riscv sparc x86"
+ KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv sparc x86"
fi
DESCRIPTION="Userspace access to FTDI USB interface chips"
@@ -22,13 +22,17 @@ SLOT="0"
IUSE="cxx doc examples python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-BDEPEND="
- doc? ( app-doc/doxygen )
- python? ( dev-lang/swig )"
-RDEPEND="virtual/libusb:0
+RDEPEND="
+ virtual/libusb:0
cxx? ( dev-libs/boost )
- python? ( ${PYTHON_DEPS} )"
+ doc? ( !dev-embedded/libftdi:1[doc] )
+ python? ( ${PYTHON_DEPS} )
+"
DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( app-text/doxygen )
+ python? ( dev-lang/swig )
+"
PATCHES=(
"${FILESDIR}"/${P}-cmake-include.patch
@@ -70,7 +74,7 @@ src_install() {
dodoc ChangeLog README
if use doc ; then
- # Clean up crap man pages. #356369
+ # Clean up man pages with too generic names. #356369
rm -vf "${BUILD_DIR}"/doc/man/man3/{_,usb_,deprecated}* || die
doman "${BUILD_DIR}"/doc/man/man3/*
diff --git a/dev-embedded/libftdi/libftdi-0.20-r3.ebuild b/dev-embedded/libftdi/libftdi-0.20-r3.ebuild
new file mode 100644
index 000000000000..da4a55f0c65e
--- /dev/null
+++ b/dev-embedded/libftdi/libftdi-0.20-r3.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit cmake python-single-r1
+
+if [[ ${PV} == 9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="git://developer.intra2net.com/${PN}"
+else
+ SRC_URI="https://www.intra2net.com/en/developer/${PN}/download/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+
+DESCRIPTION="Userspace access to FTDI USB interface chips"
+HOMEPAGE="https://www.intra2net.com/en/developer/libftdi/"
+
+LICENSE="LGPL-2"
+SLOT="0"
+IUSE="cxx doc examples python static-libs"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ virtual/libusb:0
+ cxx? ( dev-libs/boost )
+ doc? ( !dev-embedded/libftdi:1[doc] )
+ python? ( ${PYTHON_DEPS} )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( app-text/doxygen )
+ python? ( >=dev-lang/swig-4.2.0 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-cmake-include.patch
+ "${FILESDIR}"/${P}-cmake-version.patch
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ if use python; then
+ sed -i \
+ -e "s:[$]{PYTHON_LIB_INSTALL}/../site-packages:$(python_get_sitedir):" \
+ bindings/CMakeLists.txt || die
+ fi
+ sed -i \
+ -e '/SET(LIB_SUFFIX /d' \
+ CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DFTDIPP=$(usex cxx)
+ -DDOCUMENTATION=$(usex doc)
+ -DEXAMPLES=$(usex examples)
+ -DPYTHON_BINDINGS=$(usex python)
+ -DCMAKE_SKIP_BUILD_RPATH=ON
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ use python && python_optimize
+ dodoc ChangeLog README
+
+ if use doc ; then
+ # Clean up man pages with too generic names. #356369
+ rm -vf "${BUILD_DIR}"/doc/man/man3/{_,usb_,deprecated}* || die
+
+ doman "${BUILD_DIR}"/doc/man/man3/*
+ dodoc -r "${BUILD_DIR}"/doc/html
+ fi
+
+ if use examples ; then
+ docinto examples
+ dodoc examples/*.c
+ fi
+
+ use static-libs || rm "${ED}"/usr/$(get_libdir)/${PN}.a || die
+}
diff --git a/dev-embedded/libftdi/libftdi-1.5-r4.ebuild b/dev-embedded/libftdi/libftdi-1.5-r5.ebuild
index 903865676551..8f815a1699dd 100644
--- a/dev-embedded/libftdi/libftdi-1.5-r4.ebuild
+++ b/dev-embedded/libftdi/libftdi-1.5-r5.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{10..11} )
inherit cmake python-single-r1
MY_P="${PN}1-${PV}"
@@ -15,6 +15,11 @@ else
S="${WORKDIR}/${MY_P}"
KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv sparc x86"
+
+ PATCHES=(
+ "${FILESDIR}"/${P}-tests-no-cxx.patch
+ "${FILESDIR}"/${P}-cmake-cxx.patch
+ )
fi
DESCRIPTION="Userspace access to FTDI USB interface chips"
@@ -26,25 +31,20 @@ IUSE="cxx doc examples python test tools"
RESTRICT="!test? ( test )"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-BDEPEND="
- doc? ( app-doc/doxygen )
- python? ( dev-lang/swig )"
RDEPEND="
virtual/libusb:1
cxx? ( dev-libs/boost )
+ doc? ( !dev-embedded/libftdi:0[doc] )
python? ( ${PYTHON_DEPS} )
- tools? (
- !<dev-embedded/ftdi_eeprom-1.0
- dev-libs/confuse:=
- )"
+ tools? ( dev-libs/confuse:= )
+"
DEPEND="${RDEPEND}
test? ( dev-libs/boost )
"
-
-PATCHES=(
- "${FILESDIR}"/${P}-tests-no-cxx.patch
- "${FILESDIR}"/${P}-cmake-cxx.patch
-)
+BDEPEND="
+ doc? ( app-text/doxygen )
+ python? ( dev-lang/swig )
+"
pkg_setup() {
use python && python-single-r1_pkg_setup
@@ -76,7 +76,7 @@ src_install() {
dodoc AUTHORS ChangeLog README TODO
if use doc ; then
- # Clean up crap man pages. #356369
+ # Clean up man pages with too generic names. #356369
rm -vf "${BUILD_DIR}"/doc/man/man3/_* || die
doman "${BUILD_DIR}"/doc/man/man3/*
diff --git a/dev-embedded/libftdi/libftdi-1.5-r6.ebuild b/dev-embedded/libftdi/libftdi-1.5-r6.ebuild
new file mode 100644
index 000000000000..267cb1a06ce6
--- /dev/null
+++ b/dev-embedded/libftdi/libftdi-1.5-r6.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit cmake python-single-r1
+
+MY_P="${PN}1-${PV}"
+if [[ ${PV} == 9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="git://developer.intra2net.com/${PN}"
+else
+ SRC_URI="https://www.intra2net.com/en/developer/${PN}/download/${MY_P}.tar.bz2"
+ S="${WORKDIR}/${MY_P}"
+
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ PATCHES=(
+ "${FILESDIR}"/${P}-tests-no-cxx.patch
+ "${FILESDIR}"/${P}-cmake-cxx.patch
+ )
+fi
+
+DESCRIPTION="Userspace access to FTDI USB interface chips"
+HOMEPAGE="https://www.intra2net.com/en/developer/libftdi/"
+
+LICENSE="LGPL-2"
+SLOT="1"
+IUSE="cxx doc examples python test tools"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ virtual/libusb:1
+ cxx? ( dev-libs/boost )
+ doc? ( !dev-embedded/libftdi:0[doc] )
+ python? ( ${PYTHON_DEPS} )
+ tools? ( dev-libs/confuse:= )
+"
+DEPEND="${RDEPEND}
+ test? ( dev-libs/boost )
+"
+BDEPEND="
+ doc? ( app-text/doxygen )
+ python? ( >=dev-lang/swig-4.2.0 )
+"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DFTDIPP=$(usex cxx)
+ -DDOCUMENTATION=$(usex doc)
+ -DEXAMPLES=$(usex examples)
+ -DPYTHON_BINDINGS=$(usex python)
+ -DBUILD_TESTS=$(usex test)
+ -DFTDI_EEPROM=$(usex tools)
+ -DCMAKE_SKIP_BUILD_RPATH=ON
+ -DSTATICLIBS=OFF
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ cd "${BUILD_DIR}/test" || die
+ LD_LIBRARY_PATH="${BUILD_DIR}/src" ./test_libftdi1 -l all || die
+}
+
+src_install() {
+ cmake_src_install
+
+ use python && python_optimize
+ dodoc AUTHORS ChangeLog README TODO
+
+ if use doc ; then
+ # Clean up man pages with too generic names. #356369
+ rm -vf "${BUILD_DIR}"/doc/man/man3/_* || die
+
+ doman "${BUILD_DIR}"/doc/man/man3/*
+ dodoc -r "${BUILD_DIR}"/doc/html
+ fi
+
+ if use examples ; then
+ docinto examples
+ dodoc examples/*.c
+ fi
+}
diff --git a/dev-embedded/libftdi/libftdi-9999.ebuild b/dev-embedded/libftdi/libftdi-9999.ebuild
index e59e64110b94..0430681351f7 100644
--- a/dev-embedded/libftdi/libftdi-9999.ebuild
+++ b/dev-embedded/libftdi/libftdi-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{10..12} )
inherit cmake python-single-r1
MY_P="${PN}1-${PV}"
@@ -14,7 +14,12 @@ else
SRC_URI="https://www.intra2net.com/en/developer/${PN}/download/${MY_P}.tar.bz2"
S="${WORKDIR}/${MY_P}"
- KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ PATCHES=(
+ "${FILESDIR}"/${P}-tests-no-cxx.patch
+ "${FILESDIR}"/${P}-cmake-cxx.patch
+ )
fi
DESCRIPTION="Userspace access to FTDI USB interface chips"
@@ -26,20 +31,19 @@ IUSE="cxx doc examples python test tools"
RESTRICT="!test? ( test )"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-BDEPEND="
- doc? ( app-doc/doxygen )
- python? ( dev-lang/swig )"
RDEPEND="
virtual/libusb:1
cxx? ( dev-libs/boost )
python? ( ${PYTHON_DEPS} )
- tools? (
- !<dev-embedded/ftdi_eeprom-1.0
- dev-libs/confuse:=
- )"
+ tools? ( dev-libs/confuse:= )
+"
DEPEND="${RDEPEND}
test? ( dev-libs/boost )
"
+BDEPEND="
+ doc? ( app-text/doxygen )
+ python? ( >=dev-lang/swig-4.2.0 )
+"
pkg_setup() {
use python && python-single-r1_pkg_setup
@@ -71,7 +75,7 @@ src_install() {
dodoc AUTHORS ChangeLog README TODO
if use doc ; then
- # Clean up crap man pages. #356369
+ # Clean up man pages with too generic names. #356369
rm -vf "${BUILD_DIR}"/doc/man/man3/_* || die
doman "${BUILD_DIR}"/doc/man/man3/*
diff --git a/dev-embedded/libjaylink/libjaylink-0.3.1.ebuild b/dev-embedded/libjaylink/libjaylink-0.3.1.ebuild
index acb1508d8178..efa49fe3dcb0 100644
--- a/dev-embedded/libjaylink/libjaylink-0.3.1.ebuild
+++ b/dev-embedded/libjaylink/libjaylink-0.3.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -11,7 +11,7 @@ SRC_URI="https://gitlab.zapb.de/libjaylink/libjaylink/-/archive/${PV}/${P}.tar.b
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="amd64 arm ~riscv x86"
+KEYWORDS="amd64 arm ~loong ~riscv x86"
DEPEND="virtual/libusb:1"
RDEPEND="${DEPEND}"
diff --git a/dev-embedded/mcu8051ide/mcu8051ide-1.4.10-r1.ebuild b/dev-embedded/mcu8051ide/mcu8051ide-1.4.10-r1.ebuild
index 25736dcc3994..11d5acc69d11 100644
--- a/dev-embedded/mcu8051ide/mcu8051ide-1.4.10-r1.ebuild
+++ b/dev-embedded/mcu8051ide/mcu8051ide-1.4.10-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -15,7 +15,7 @@ KEYWORDS="~amd64"
# The doxygen dependency is suspect, but it appears to be used at runtime.
RDEPEND="
- >=app-doc/doxygen-1.7
+ >=app-text/doxygen-1.7
>=app-text/hunspell-1.3
>=dev-embedded/sdcc-2.5[mcs51]
>=dev-lang/tcl-8.5.9:*
diff --git a/dev-embedded/mcu8051ide/metadata.xml b/dev-embedded/mcu8051ide/metadata.xml
index e72f952f3b57..b14cae3a5f32 100644
--- a/dev-embedded/mcu8051ide/metadata.xml
+++ b/dev-embedded/mcu8051ide/metadata.xml
@@ -8,5 +8,6 @@
<email>martin.osmera@gmail.com</email>
<name>Martin Osmera</name>
</maintainer>
+ <remote-id type="sourceforge">mcu8051ide</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-embedded/mspdebug/mspdebug-0.25.ebuild b/dev-embedded/mspdebug/mspdebug-0.25-r1.ebuild
index a4ff1ba9081b..1b68b8fafadc 100644
--- a/dev-embedded/mspdebug/mspdebug-0.25.ebuild
+++ b/dev-embedded/mspdebug/mspdebug-0.25-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
inherit toolchain-funcs
@@ -24,10 +24,10 @@ src_prepare() {
}
src_compile() {
- emake CC="$(tc-getCC)" LIBDIR=/usr/lib $(usex readline "" "WITHOUT_READLINE=1")
+ emake CC="$(tc-getCC)" LIBDIR=/usr/$(get_libdir) $(usex readline "" "WITHOUT_READLINE=1")
}
src_install() {
- emake DESTDIR="${ED}" LIBDIR=/usr/lib PREFIX=/usr install
- dodoc AUTHORS ChangeLog README
+ emake DESTDIR="${ED}" LIBDIR=/usr/$(get_libdir) PREFIX=/usr install
+ einstalldocs
}
diff --git a/dev-embedded/nodemcu-uploader/nodemcu-uploader-1.0.0-r1.ebuild b/dev-embedded/nodemcu-uploader/nodemcu-uploader-1.0.0-r1.ebuild
new file mode 100644
index 000000000000..85ff04fa53c9
--- /dev/null
+++ b/dev-embedded/nodemcu-uploader/nodemcu-uploader-1.0.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..11} )
+inherit distutils-r1
+
+DESCRIPTION="Simple tool for uploading files to the filesystem of an ESP8266 running NodeMCU"
+HOMEPAGE="https://github.com/kmpm/nodemcu-uploader"
+SRC_URI="https://github.com/kmpm/nodemcu-uploader/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND=">=dev-python/pyserial-3.4[${PYTHON_USEDEP}]"
+
+distutils_enable_tests setup.py
+
+src_prepare() {
+ # https://bugs.gentoo.org/796422
+ sed -i -e 's:description-file:description_file:' setup.cfg || die
+
+ distutils-r1_src_prepare
+}
diff --git a/dev-embedded/nodemcu-uploader/nodemcu-uploader-1.0.0.ebuild b/dev-embedded/nodemcu-uploader/nodemcu-uploader-1.0.0.ebuild
index f8f4861793bb..d6a6dde13414 100644
--- a/dev-embedded/nodemcu-uploader/nodemcu-uploader-1.0.0.ebuild
+++ b/dev-embedded/nodemcu-uploader/nodemcu-uploader-1.0.0.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{7..10} )
+PYTHON_COMPAT=( python3_{9..10} )
inherit distutils-r1
DESCRIPTION="Simple tool for uploading files to the filesystem of an ESP8266 running NodeMCU"
diff --git a/dev-embedded/openocd/Manifest b/dev-embedded/openocd/Manifest
index 399fea8ec02c..bfa1962f57ef 100644
--- a/dev-embedded/openocd/Manifest
+++ b/dev-embedded/openocd/Manifest
@@ -1 +1 @@
-DIST openocd-0.11.0.tar.gz 7233889 BLAKE2B 272088c261a066d0a99cbbf2ebbc324fc34bc168290bbf0beb4012655b6b54848cc48324f36c65860518160c3fe43abb8c9a5f5b03f0cbaf7cdfb928f8fb8eea SHA512 667c5bea4144653f7c1309457b3aed1e14713f222dab8f2bb67a8e6c69e124a0efc24cd8f76e2b929d4ced045de14517f3587870682d0394ec95ba52e343e19b
+DIST openocd-0.12.0.tar.gz 8445833 BLAKE2B 82616ed1bf51588d2a19c56fab6a6944ac5fa22e07bc5f83962ff8fecd88faeceb33e2104acb3cd08710f7f96d578ccd4ef6282372ae9d206ab469b3ac70fff8 SHA512 2b95d30eb10316b5cf1b329e0214b8d9f3fbf1fda5fa5568acc8cb16cdc25aa58c211f17f9883d8e4b93bcda3f296e511c279b44d24db9303c26e6c6640540b0
diff --git a/dev-embedded/openocd/files/openocd-0.12.0-capstone-includedir.patch b/dev-embedded/openocd/files/openocd-0.12.0-capstone-includedir.patch
new file mode 100644
index 000000000000..f2dbff6520e5
--- /dev/null
+++ b/dev-embedded/openocd/files/openocd-0.12.0-capstone-includedir.patch
@@ -0,0 +1,40 @@
+Bug: https://bugs.gentoo.org/889762
+diff --git a/contrib/cross-build.sh b/contrib/cross-build.sh
+index b199bf715..919a22005 100755
+--- a/contrib/cross-build.sh
++++ b/contrib/cross-build.sh
+@@ -155,7 +155,7 @@ if [ -d $CAPSTONE_SRC ] ; then
+ sed -i '1s;^;prefix=/usr \
+ exec_prefix=${prefix} \
+ libdir=${exec_prefix}/lib \
+-includedir=${prefix}/include/capstone\n\n;' $CAPSTONE_PC_FILE
++includedir=${prefix}/include\n\n;' $CAPSTONE_PC_FILE
+ fi
+
+
+diff --git a/src/target/a64_disassembler.c b/src/target/a64_disassembler.c
+index ca3d3ea7a..9579860f0 100644
+--- a/src/target/a64_disassembler.c
++++ b/src/target/a64_disassembler.c
+@@ -15,7 +15,7 @@
+
+ #if HAVE_CAPSTONE
+
+-#include <capstone.h>
++#include <capstone/capstone.h>
+
+ static void print_opcode(struct command_invocation *cmd, const cs_insn *insn)
+ {
+diff --git a/src/target/arm_disassembler.c b/src/target/arm_disassembler.c
+index 749274f36..e78d08853 100644
+--- a/src/target/arm_disassembler.c
++++ b/src/target/arm_disassembler.c
+@@ -16,7 +16,7 @@
+ #include <helper/log.h>
+
+ #if HAVE_CAPSTONE
+-#include <capstone.h>
++#include <capstone/capstone.h>
+ #endif
+
+ /*
diff --git a/dev-embedded/openocd/metadata.xml b/dev-embedded/openocd/metadata.xml
index 2e7d93558d6d..358a9c0a93c5 100644
--- a/dev-embedded/openocd/metadata.xml
+++ b/dev-embedded/openocd/metadata.xml
@@ -17,6 +17,7 @@
<flag name="capstone">Use <pkg>dev-libs/capstone</pkg> for disassembly support</flag>
<flag name="cmsis-dap">Support for CMSIS-DAP compliant adapters</flag>
<flag name="dummy">Build the dummy port driver</flag>
+ <flag name="gpiod">Enable Linux GPIO bitbang support via libgpiod</flag>
<flag name="jlink"> Build the SEGGER J-Link driver</flag>
<flag name="ftdi">Enable support for USB FTDI chips via <pkg>dev-embedded/libftdi</pkg></flag>
<flag name="parport">Enable support for parport JTAG devices</flag>
@@ -24,5 +25,6 @@
</use>
<upstream>
<remote-id type="sourceforge">openocd</remote-id>
+ <remote-id type="cpe">cpe:/a:openocd:open_on-chip_debugger</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-embedded/openocd/openocd-0.11.0.ebuild b/dev-embedded/openocd/openocd-0.12.0-r1.ebuild
index a9c78e5c1ea0..37a77f103946 100644
--- a/dev-embedded/openocd/openocd-0.11.0.ebuild
+++ b/dev-embedded/openocd/openocd-0.12.0-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit autotools udev
@@ -17,7 +17,7 @@ else
fi
DESCRIPTION="OpenOCD - Open On-Chip Debugger"
-HOMEPAGE="http://openocd.sourceforge.net"
+HOMEPAGE="https://openocd.sourceforge.io"
LICENSE="GPL-2+"
SLOT="0"
@@ -26,20 +26,21 @@ RESTRICT="strip" # includes non-native binaries
RDEPEND="
acct-group/plugdev
- >=dev-lang/jimtcl-0.76:=
- <dev-lang/jimtcl-0.80:=
+ >=dev-lang/jimtcl-0.81:=
+ dev-libs/libgpiod:0/2
capstone? ( dev-libs/capstone )
cmsis-dap? ( dev-libs/hidapi )
jlink? ( >=dev-embedded/libjaylink-0.2.0 )
- usb? (
- virtual/libusb:0
- virtual/libusb:1
- )
+ usb? ( virtual/libusb:1 )
ftdi? ( dev-embedded/libftdi:= )"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
+PATCHES=(
+ "${FILESDIR}/${PN}-0.12.0-capstone-includedir.patch"
+)
+
src_prepare() {
default
@@ -49,15 +50,19 @@ src_prepare() {
src_configure() {
local myconf=(
--enable-amtjtagaccel
+ --enable-am335xgpio
--enable-arm-jtag-ew
--enable-at91rm9200
--enable-bcm2835gpio
--enable-buspirate
--enable-ep93xx
--enable-gw16012
+ --enable-jtag_dpi
--enable-sysfsgpio
+ --enable-vdebug
--disable-internal-jimtcl
--disable-internal-libjaylink
+ --disable-parport-giveio
--disable-werror
$(use_with capstone)
$(use_enable cmsis-dap)
diff --git a/dev-embedded/openocd/openocd-0.12.0-r2.ebuild b/dev-embedded/openocd/openocd-0.12.0-r2.ebuild
new file mode 100644
index 000000000000..698978b49848
--- /dev/null
+++ b/dev-embedded/openocd/openocd-0.12.0-r2.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools udev
+
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI=" https://repo.or.cz/openocd.git"
+else
+ MY_PV="${PV/_/-}"
+ MY_P="${PN}-${MY_PV}"
+ S="${WORKDIR}"/${MY_P}
+ KEYWORDS="~amd64 ~arm ~x86"
+ SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${MY_PV}/${MY_P}.tar.gz"
+fi
+
+DESCRIPTION="OpenOCD - Open On-Chip Debugger"
+HOMEPAGE="https://openocd.sourceforge.io"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="capstone +cmsis-dap dummy +ftdi gpiod +jlink parport +usb verbose-io"
+RESTRICT="strip" # includes non-native binaries
+
+RDEPEND="
+ acct-group/plugdev
+ >=dev-lang/jimtcl-0.81:=
+ gpiod? ( dev-libs/libgpiod:0/2 )
+ capstone? ( dev-libs/capstone )
+ cmsis-dap? ( dev-libs/hidapi )
+ jlink? ( >=dev-embedded/libjaylink-0.2.0 )
+ usb? ( virtual/libusb:1 )
+ ftdi? ( dev-embedded/libftdi:= )"
+
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.12.0-capstone-includedir.patch"
+)
+
+src_prepare() {
+ default
+
+ AT_NO_RECURSIVE=yes eautoreconf
+}
+
+src_configure() {
+ local myconf=(
+ --enable-amtjtagaccel
+ --enable-am335xgpio
+ --enable-arm-jtag-ew
+ --enable-at91rm9200
+ --enable-bcm2835gpio
+ --enable-buspirate
+ --enable-ep93xx
+ --enable-gw16012
+ --enable-jtag_dpi
+ --enable-sysfsgpio
+ --enable-vdebug
+ --disable-internal-jimtcl
+ --disable-internal-libjaylink
+ --disable-parport-giveio
+ --disable-werror
+ $(use_with capstone)
+ $(use_enable cmsis-dap)
+ $(use_enable dummy)
+ $(use_enable ftdi openjtag)
+ $(use_enable ftdi presto)
+ $(use_enable ftdi usb-blaster)
+ $(use_enable gpiod linuxgpiod)
+ $(use_enable jlink)
+ $(use_enable parport)
+ $(use_enable parport parport_ppdev)
+ $(use_enable usb aice)
+ $(use_enable usb armjtagew)
+ $(use_enable usb ftdi)
+ $(use_enable usb osbdm)
+ $(use_enable usb opendous)
+ $(use_enable usb rlink)
+ $(use_enable usb stlink)
+ $(use_enable usb ti-icdi)
+ $(use_enable usb usbprog)
+ $(use_enable usb usb-blaster-2)
+ $(use_enable usb ulink)
+ $(use_enable usb vsllink)
+ $(use_enable verbose-io verbose-jtag-io)
+ $(use_enable verbose-io verbose-usb-io)
+ $(use_enable verbose-io verbose_usb_comms)
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ default
+ dostrip /usr/bin
+ udev_dorules "${ED}"/usr/share/${PN}/contrib/*.rules
+}
+
+pkg_postinst() {
+ udev_reload
+
+ elog "To access openocd devices as user you must be in the plugdev group"
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/dev-embedded/openocd/openocd-9999.ebuild b/dev-embedded/openocd/openocd-9999.ebuild
index 569c77f75c26..bf5127f94e2c 100644
--- a/dev-embedded/openocd/openocd-9999.ebuild
+++ b/dev-embedded/openocd/openocd-9999.ebuild
@@ -1,12 +1,12 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit udev
+inherit autotools udev
if [[ ${PV} == *9999 ]] ; then
- inherit autotools git-r3
+ inherit git-r3
EGIT_REPO_URI=" https://repo.or.cz/openocd.git"
else
MY_PV="${PV/_/-}"
@@ -17,55 +17,56 @@ else
fi
DESCRIPTION="OpenOCD - Open On-Chip Debugger"
-HOMEPAGE="http://openocd.sourceforge.net"
+HOMEPAGE="https://openocd.sourceforge.io"
LICENSE="GPL-2+"
SLOT="0"
-IUSE="+cmsis-dap dummy +ftdi +jlink parport +usb verbose-io"
+IUSE="capstone +cmsis-dap dummy +ftdi gpiod +jlink parport +usb verbose-io"
RESTRICT="strip" # includes non-native binaries
RDEPEND="
acct-group/plugdev
- >=dev-lang/jimtcl-0.80:=
+ >=dev-lang/jimtcl-0.81:=
+ gpiod? ( dev-libs/libgpiod:0/2 )
+ capstone? ( dev-libs/capstone )
cmsis-dap? ( dev-libs/hidapi )
jlink? ( >=dev-embedded/libjaylink-0.2.0 )
- usb? (
- virtual/libusb:0
- virtual/libusb:1
- )
+ usb? ( virtual/libusb:1 )
ftdi? ( dev-embedded/libftdi:= )"
DEPEND="${RDEPEND}"
-BDEPEND="
- sys-apps/texinfo
- virtual/pkgconfig"
+BDEPEND="virtual/pkgconfig"
src_prepare() {
default
- if [[ ${PV} == *9999 ]] ; then
- AT_NO_RECURSIVE=yes eautoreconf
- fi
+ AT_NO_RECURSIVE=yes eautoreconf
}
src_configure() {
local myconf=(
--enable-amtjtagaccel
+ --enable-am335xgpio
--enable-arm-jtag-ew
--enable-at91rm9200
--enable-bcm2835gpio
--enable-buspirate
--enable-ep93xx
--enable-gw16012
+ --enable-jtag_dpi
--enable-sysfsgpio
+ --enable-vdebug
--disable-internal-jimtcl
--disable-internal-libjaylink
+ --disable-parport-giveio
--disable-werror
+ $(use_with capstone)
$(use_enable cmsis-dap)
$(use_enable dummy)
$(use_enable ftdi openjtag)
$(use_enable ftdi presto)
$(use_enable ftdi usb-blaster)
+ $(use_enable gpiod linuxgpiod)
$(use_enable jlink)
$(use_enable parport)
$(use_enable parport parport_ppdev)
diff --git a/dev-embedded/parapin/parapin-1.5.0-r1.ebuild b/dev-embedded/parapin/parapin-1.5.0-r1.ebuild
index eb1ca039789c..2a6d167d64d5 100644
--- a/dev-embedded/parapin/parapin-1.5.0-r1.ebuild
+++ b/dev-embedded/parapin/parapin-1.5.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -6,7 +6,7 @@ EAPI=8
inherit toolchain-funcs
DESCRIPTION="A parallel port pin programming library"
-HOMEPAGE="http://parapin.sourceforge.net/"
+HOMEPAGE="https://parapin.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tgz"
LICENSE="LGPL-2.1"
diff --git a/dev-embedded/parapin/parapin-1.5.1_beta1-r1.ebuild b/dev-embedded/parapin/parapin-1.5.1_beta1-r1.ebuild
index ec6e6a5c1db3..362ef34eb18d 100644
--- a/dev-embedded/parapin/parapin-1.5.1_beta1-r1.ebuild
+++ b/dev-embedded/parapin/parapin-1.5.1_beta1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -6,7 +6,7 @@ EAPI=8
inherit toolchain-funcs
DESCRIPTION="A parallel port pin programming library"
-HOMEPAGE="http://parapin.sourceforge.net/"
+HOMEPAGE="https://parapin.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P/_/-}.tgz"
S="${WORKDIR}/${P/_/-}"
diff --git a/dev-embedded/picotool/Manifest b/dev-embedded/picotool/Manifest
index be1eb2c00070..3d6cae10ab17 100644
--- a/dev-embedded/picotool/Manifest
+++ b/dev-embedded/picotool/Manifest
@@ -1,2 +1,2 @@
DIST pico-sdk-1.4.0.tar.gz 959068 BLAKE2B 95c5e61c4d66c345daa4b8aff8e9e2cd90bcc722289ac67c1a18ce00dfa02ef7fb07512a0fdc7558f989746c215cff31979f1ad8a582e20ff2d151fdd109914f SHA512 4be28cf41e5b808a504b4c949f6c3e9fbc425beb4f838a7898bfd78925cc54e0390ff56c036bc7f60a26efac0d6c1bd811b27f7b60a1c8d7bb4750f3fa37690e
-DIST picotool-1.1.0.tar.gz 43994 BLAKE2B 2b8536540be912418be1f0f0d93bb59b9cd4832ce46854478fb0bfbcb4463b49e4806068897a1d665b73ea7a764bf0d96f0a56cde01ef6503c74e1eadc4ed9c2 SHA512 5c13a88e90baed28cf435c7641a84c1c814fc473d57f2502ebb594d84c71bbe82632bf0d24b7755ebfec270d85f4588c488917a224b68c93f40573e956026efc
+DIST picotool-1.1.2.tar.gz 45282 BLAKE2B b7425ae197adef3f72aafa9450338ab1c3ddd4b1a13ff9f4847951ee3d7fd91226f780061416c0d72f963ad0afcf4a14d85c72b6199482738eb5344c8dc6563f SHA512 63e0c77865243aca0b46cb844f5eb104c762d2b38f645c75f32224b61d9768ef0ba59b55d94480559627ec4b23ad6edc49d013f90646644a5dc798090d37a257
diff --git a/dev-embedded/picotool/files/picotool-1.1.2-musl.patch b/dev-embedded/picotool/files/picotool-1.1.2-musl.patch
new file mode 100644
index 000000000000..77eeda5b6b9c
--- /dev/null
+++ b/dev-embedded/picotool/files/picotool-1.1.2-musl.patch
@@ -0,0 +1,17 @@
+https://bugs.gentoo.org/867283
+https://wiki.gentoo.org/wiki/Musl_porting_notes#cdefs.h:_No_such_file_or_directory
+--- a/pico-sdk/src/host/pico_platform/include/pico/platform.h
++++ b/pico-sdk/src/host/pico_platform/include/pico/platform.h
+@@ -13,7 +13,11 @@
+
+ #ifdef __unix__
+
+-#include <sys/cdefs.h>
++#if defined __has_include
++# if __has_include (<sys/cdefs.h>)
++# include <sys/cdefs.h>
++# endif
++#endif
+
+ #endif
+
diff --git a/dev-embedded/picotool/picotool-1.1.0.ebuild b/dev-embedded/picotool/picotool-1.1.2.ebuild
index bd7b207bbca2..fbed611955ca 100644
--- a/dev-embedded/picotool/picotool-1.1.0.ebuild
+++ b/dev-embedded/picotool/picotool-1.1.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -27,9 +27,16 @@ RDEPEND="virtual/libusb:1"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
+PATCHES=( "${FILESDIR}"/${PN}-1.1.2-musl.patch )
+
+src_prepare() {
+ mv "${WORKDIR}"/${SDK_P} "${S}"/pico-sdk || die
+ cmake_src_prepare
+}
+
src_configure() {
local mycmakeargs=(
- -DPICO_SDK_PATH="${WORKDIR}"/${SDK_P}
+ -DPICO_SDK_PATH="${S}"/pico-sdk
)
cmake_src_configure
}
diff --git a/dev-embedded/platformio/Manifest b/dev-embedded/platformio/Manifest
index 7c820c466860..9434f03835b0 100644
--- a/dev-embedded/platformio/Manifest
+++ b/dev-embedded/platformio/Manifest
@@ -1 +1 @@
-DIST platformio-6.1.5.tar.gz 290684 BLAKE2B 1beca08e70f6a932426e13e6b4755188ad2ac266c4b311b2e6ea560623ccc7479ad5fa1955c09e613eb62682164d1952be3b7f050a26d5a5b6bff26435bb2337 SHA512 43835a40636091d7062a1cbd96950ddb29592aba6c4eaeb80f37288f949bd95f3312cb5f33814cf8521e3b5bd3ceeb2e32e76c294ef5cbf992ed3c674d4a9ab7
+DIST platformio-6.1.11.gh.tar.gz 296333 BLAKE2B 17672b499eca9c828cd7c6ea6a4c8acea7287f42bb78d4fc5fbd11bb93175bb87d9c2d100270869bc99bc0db550b49c163555ddd8edb17b6b33ccc5f3623f768 SHA512 450e3d1dc3b9c8124b6254fbf0a05b207b834aa0661f083ee2915bde5064498b6d5af666ad851b737fa5627ed436db983e038f83ed0437a1e248749a0dcc99ba
diff --git a/dev-embedded/platformio/metadata.xml b/dev-embedded/platformio/metadata.xml
index 34f42ecf020c..87876d21d985 100644
--- a/dev-embedded/platformio/metadata.xml
+++ b/dev-embedded/platformio/metadata.xml
@@ -5,4 +5,7 @@
<email>alexxy@gentoo.org</email>
<name>Alexey Shvetsov</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">platformio/platformio-core</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-embedded/platformio/platformio-6.1.5.ebuild b/dev-embedded/platformio/platformio-6.1.11.ebuild
index d19bf8c9d53a..98da137e5799 100644
--- a/dev-embedded/platformio/platformio-6.1.5.ebuild
+++ b/dev-embedded/platformio/platformio-6.1.11.ebuild
@@ -1,17 +1,17 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_SINGLE_IMPL=1
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1 udev
DESCRIPTION="An open source ecosystem for IoT development"
HOMEPAGE="https://platformio.org/"
-SRC_URI="https://github.com/platformio/platformio-core/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/platformio/platformio-core/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
S="${WORKDIR}"/${PN}-core-${PV}
LICENSE="BSD"
@@ -20,24 +20,24 @@ KEYWORDS="~amd64 ~x86"
RDEPEND="
$(python_gen_cond_dep '
- =dev-python/aiofiles-22.1*[${PYTHON_USEDEP}]
+ >=dev-python/aiofiles-22.1[${PYTHON_USEDEP}]
dev-python/ajsonrpc[${PYTHON_USEDEP}]
<dev-python/bottle-0.13[${PYTHON_USEDEP}]
=dev-python/click-8*[${PYTHON_USEDEP}]
dev-python/colorama[${PYTHON_USEDEP}]
>=dev-python/pyserial-3[${PYTHON_USEDEP}]
<dev-python/pyserial-4[${PYTHON_USEDEP}]
- >=dev-python/python-zeroconf-0.37[${PYTHON_USEDEP}]
+ >=dev-python/zeroconf-0.37[${PYTHON_USEDEP}]
=dev-python/requests-2*[${PYTHON_USEDEP}]
- >=dev-python/semantic_version-2.9[${PYTHON_USEDEP}]
- <dev-python/semantic_version-3[${PYTHON_USEDEP}]
+ >=dev-python/semantic-version-2.10[${PYTHON_USEDEP}]
+ <dev-python/semantic-version-3[${PYTHON_USEDEP}]
=dev-python/tabulate-0.9*[${PYTHON_USEDEP}]
dev-python/twisted[${PYTHON_USEDEP}]
- >=dev-python/pyelftools-0.27[${PYTHON_USEDEP}]
+ >=dev-python/pyelftools-0.30[${PYTHON_USEDEP}]
<dev-python/pyelftools-1[${PYTHON_USEDEP}]
=dev-python/marshmallow-3*[${PYTHON_USEDEP}]
- =dev-python/starlette-0.21*[${PYTHON_USEDEP}]
- =dev-python/uvicorn-0.19*[${PYTHON_USEDEP}]
+ >=dev-python/starlette-0.21[${PYTHON_USEDEP}]
+ >=dev-python/uvicorn-0.19[${PYTHON_USEDEP}]
dev-python/wsproto[${PYTHON_USEDEP}]
')
virtual/udev"
@@ -82,17 +82,21 @@ EPYTEST_DESELECT=(
distutils_enable_tests pytest
-src_prepare() {
- # Allow newer versions of zeroconf, Bug #831181.
- # Also wsproto.
- # ... and semantic_version, bug #853247.
+python_prepare_all() {
+ # Allow newer versions of:
+ # - zeroconf, bug #831181.
+ # - wsproto
+ # - semantic_version, bug #853247
+ # - starlette & uvicorn, bug #888427
sed \
-e '/zeroconf/s/<[0-9.*]*//' \
-e '/wsproto/s/==.*/"/' \
-e '/semantic_version/s/==[0-9.*]*//' \
+ -e '/starlette/s/==.*/"/' \
+ -e '/uvicorn/s/==.*/"/' \
-i setup.py || die
- default
+ distutils-r1_python_prepare_all
}
python_test() {
@@ -101,7 +105,7 @@ python_test() {
src_install() {
distutils-r1_src_install
- udev_dorules scripts/99-platformio-udev.rules
+ udev_dorules platformio/assets/system/99-platformio-udev.rules
}
pkg_postinst() {
diff --git a/dev-embedded/ponyprog/Manifest b/dev-embedded/ponyprog/Manifest
index dfd8d4148d94..2c76d4063274 100644
--- a/dev-embedded/ponyprog/Manifest
+++ b/dev-embedded/ponyprog/Manifest
@@ -1,2 +1 @@
-DIST ponyprog-3.1.2.tar.gz 1364636 BLAKE2B a913903278791d937266da50fcd5b5bda892dcc316011117816e37fc4ef03becce893b597fb34f2a6ef05b5692bb375e4ba10b04c079a63eb735aa0ddadb5ab9 SHA512 697c6fdc775629086a1c01ad94f291fda550a9ad6065e5fdff9db9fb035b8270ed9058894db7ca17d0daf2a26cc5e431415c160d61f65214677eae2109d87603
DIST ponyprog-3.1.3.tar.gz 11479313 BLAKE2B 56704b28877687c356c72b1f28f28115cb11f40c701e207f5d3ec4aa4fa7194991162f0940400016d9ee5d42ff0a7e7da5b252f9b76417d0d8272638989fedec SHA512 09e702f3f98e65799e8c59b9c8eca6f477db3f36a2648a1fab3797f91d56c7c4e9533e32bef1fe4c641512e31828a39df4d3d83639b7541714a3cc9050cd4e67
diff --git a/dev-embedded/ponyprog/files/ponyprog-3.1.2-fix-build-system.patch b/dev-embedded/ponyprog/files/ponyprog-3.1.2-fix-build-system.patch
deleted file mode 100644
index aefbd707d585..000000000000
--- a/dev-embedded/ponyprog/files/ponyprog-3.1.2-fix-build-system.patch
+++ /dev/null
@@ -1,47 +0,0 @@
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,9 +1,7 @@
- PROJECT(ponyprog)
-
- # Configure CMake ...
--CMAKE_MINIMUM_REQUIRED(VERSION 2.8 FATAL_ERROR)
--# CMAKE_POLICY(SET CMP0003 OLD)
--# CMAKE_POLICY(SET CMP0015 OLD)
-+CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12 FATAL_ERROR)
-
- # set the Qt version to 4 or 5
- OPTION (USE_QT5 "Using of Qt5 version for compiling" ON)
-@@ -52,15 +50,7 @@
- OPTION (USE_PROFILER "Include in binary file profiling information" OFF)
-
-
--
--IF(${USE_DEBUGGER})
-- SET(CMAKE_BUILD_TYPE Debug)
-- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS_DEBUG} -Wall")
--ELSE()
-- SET(CMAKE_BUILD_TYPE Release)
-- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS_RELEASE} -Wall")
--ENDIF()
--
-+ADD_COMPILE_OPTIONS("-Wall")
- MESSAGE(STATUS "CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}")
-
- INCLUDE(CheckIncludeFile)
-@@ -202,7 +192,6 @@
- SET ( UI_HEADERS_DIR temp )
- SET ( UI_SOURCES_DIR temp )
-
--ADD_SUBDIRECTORY(qhexedit2/src)
- ADD_SUBDIRECTORY(SrcPony)
-
- INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/qhexedit2/src/ ${CMAKE_CURRENT_SOURCE_DIR}/SrcPony/ )
-@@ -265,6 +254,8 @@
- MESSAGE(STATUS "QT LIBRARIES: ${QT_LIBRARIES} ${Qt5Widgets_LIBRARIES} ${Qt5Multimedia_LIBRARIES} ${Qt5PrintSupport_LIBRARIES} ${Qt5Core_LIBRARIES}")
- ENDIF()
-
-+TARGET_LINK_LIBRARIES(${CMAKE_PROJECT_NAME} qhexedit)
-+
- ADD_CUSTOM_TARGET (tags
- COMMAND ctags -R -f tags ${CMAKE_SOURCE_DIR}/SrcPony
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
diff --git a/dev-embedded/ponyprog/ponyprog-3.1.2.ebuild b/dev-embedded/ponyprog/ponyprog-3.1.2.ebuild
deleted file mode 100644
index 33d6f998f1ff..000000000000
--- a/dev-embedded/ponyprog/ponyprog-3.1.2.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="EEPROM and microcontroller programmer/flasher"
-HOMEPAGE="https://github.com/lancos/ponyprog/"
-SRC_URI="https://github.com/lancos/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="doc"
-
-DEPEND="
- >=app-editors/qhexedit2-0.8.6_p20190316
- dev-embedded/libftdi:1[cxx]
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtmultimedia:5
- dev-qt/qtprintsupport:5
- dev-qt/qtwidgets:5
- virtual/libusb:1
-"
-# blocker on libftdi-1.5-r2: see #775116
-RDEPEND="${DEPEND}
- !=dev-embedded/libftdi-1.5-r2
-"
-
-PATCHES=( "${FILESDIR}"/${P}-fix-build-system.patch )
-
-pkg_postinst() {
- elog "To use the COM port in user mode (not as root), you need to"
- elog "be in the 'uucp' group."
- elog
- elog "To use the LPT port in user mode (not as root) you need a kernel with"
- elog "ppdev, parport and parport_pc compiled in or as modules. You need the"
- elog "rights to write to /dev/parport? devices."
-}
diff --git a/dev-embedded/ponyprog/ponyprog-3.1.3.ebuild b/dev-embedded/ponyprog/ponyprog-3.1.3.ebuild
index ae75c85ebf41..374c8ea1eee5 100644
--- a/dev-embedded/ponyprog/ponyprog-3.1.3.ebuild
+++ b/dev-embedded/ponyprog/ponyprog-3.1.3.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit cmake udev
+inherit cmake flag-o-matic udev
DESCRIPTION="EEPROM and microcontroller programmer/flasher"
HOMEPAGE="https://github.com/lancos/ponyprog/"
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/lancos/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="doc"
DEPEND="
@@ -31,6 +31,15 @@ RDEPEND="${DEPEND}
PATCHES=( "${FILESDIR}"/${P}-fix-build-system.patch )
+src_configure() {
+ # -Werror=odr
+ # https://bugs.gentoo.org/855272
+ # https://github.com/lancos/ponyprog/issues/28
+ filter-lto
+
+ cmake_src_configure
+}
+
pkg_postinst() {
udev_reload
@@ -41,3 +50,7 @@ pkg_postinst() {
elog "ppdev, parport and parport_pc compiled in or as modules. You need the"
elog "rights to write to /dev/parport? devices."
}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/dev-embedded/raspberrypi-utils/Manifest b/dev-embedded/raspberrypi-utils/Manifest
new file mode 100644
index 000000000000..24632d7cb267
--- /dev/null
+++ b/dev-embedded/raspberrypi-utils/Manifest
@@ -0,0 +1 @@
+DIST raspberrypi-utils-0_p20240203.tar.gz 122695 BLAKE2B 178b84b5210ba47a51e9815710b05d3916981f5413986cefcdb621420c9e9ab33b67026ea95692c6aff900dd2c31302059eb39aae32267b88cf765a7575f8bed SHA512 bdbe47d87a4bcd0d37ea4567e95e41fbc8240f5ffbc805d4a1f576060535af13e272b262ddad87dac0f9ea43b8b2ff9092378e67de080bd651701435b4c67008
diff --git a/dev-embedded/raspberrypi-utils/files/raspberrypi-utils-werror.patch b/dev-embedded/raspberrypi-utils/files/raspberrypi-utils-werror.patch
new file mode 100644
index 000000000000..ddfce08d0407
--- /dev/null
+++ b/dev-embedded/raspberrypi-utils/files/raspberrypi-utils-werror.patch
@@ -0,0 +1,77 @@
+https://github.com/raspberrypi/utils/pull/69
+
+From 0bbef73e2f1df17c793152895cabac452a49981f Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Tue, 6 Feb 2024 21:36:08 +0000
+Subject: [PATCH] build: Only enable -Werror for debug builds
+
+-Werror is very unhelpful for distributions and end users as newer
+compilers will raise warnings that the maintainers may not see. The
+warnings should get reported upstream, but they shouldn't block users
+from using the software.
+
+Rather than drop the flag entirely, I have enabled it only for debug
+builds, e.g. -DCMAKE_BUILD_TYPE=Debug.
+
+Signed-off-by: James Le Cuirot <chewi@gentoo.org>
+---
+ dtmerge/CMakeLists.txt | 2 +-
+ eeptools/CMakeLists.txt | 2 +-
+ pinctrl/CMakeLists.txt | 2 +-
+ vclog/CMakeLists.txt | 2 +-
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/dtmerge/CMakeLists.txt b/dtmerge/CMakeLists.txt
+index f63648b..357889f 100644
+--- a/dtmerge/CMakeLists.txt
++++ b/dtmerge/CMakeLists.txt
+@@ -5,7 +5,7 @@ include(GNUInstallDirs)
+ #set project name
+ project(dtmerge)
+
+-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Werror")
++add_compile_options(-Wall -Wextra $<$<CONFIG:Debug>:-Werror>)
+
+ if (CMAKE_COMPILER_IS_GNUCC)
+ add_definitions (-ffunction-sections)
+diff --git a/eeptools/CMakeLists.txt b/eeptools/CMakeLists.txt
+index 3438255..90fc284 100644
+--- a/eeptools/CMakeLists.txt
++++ b/eeptools/CMakeLists.txt
+@@ -5,7 +5,7 @@ include(GNUInstallDirs)
+ #set project name
+ project(eeptools)
+
+-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Werror")
++add_compile_options(-Wall -Wextra $<$<CONFIG:Debug>:-Werror>)
+
+ if (CMAKE_COMPILER_IS_GNUCC)
+ add_definitions (-ffunction-sections)
+diff --git a/pinctrl/CMakeLists.txt b/pinctrl/CMakeLists.txt
+index 2178ee4..70427f2 100644
+--- a/pinctrl/CMakeLists.txt
++++ b/pinctrl/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ cmake_minimum_required(VERSION 3.10...3.27)
+ include(GNUInstallDirs)
+
+-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Werror -pedantic")
++add_compile_options(-Wall -Wextra $<$<CONFIG:Debug>:-Werror> -pedantic)
+
+ #set project name
+ project(pinctrl)
+diff --git a/vclog/CMakeLists.txt b/vclog/CMakeLists.txt
+index 611f9dc..b7e57eb 100644
+--- a/vclog/CMakeLists.txt
++++ b/vclog/CMakeLists.txt
+@@ -1,6 +1,6 @@
+ cmake_minimum_required(VERSION 3.10...3.27)
+
+-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Werror -pedantic")
++add_compile_options(-Wall -Wextra $<$<CONFIG:Debug>:-Werror> -pedantic)
+
+ #set project name
+ project(vclog)
+--
+2.43.0
+
diff --git a/dev-embedded/raspberrypi-utils/metadata.xml b/dev-embedded/raspberrypi-utils/metadata.xml
new file mode 100644
index 000000000000..11b4d811a352
--- /dev/null
+++ b/dev-embedded/raspberrypi-utils/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>chewi@gentoo.org</email>
+ <name>James Le Cuirot</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">raspberrypi/utils</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-embedded/raspberrypi-utils/raspberrypi-utils-0_p20240203.ebuild b/dev-embedded/raspberrypi-utils/raspberrypi-utils-0_p20240203.ebuild
new file mode 100644
index 000000000000..afa8e74dada6
--- /dev/null
+++ b/dev-embedded/raspberrypi-utils/raspberrypi-utils-0_p20240203.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 cmake
+
+COMMIT="1eb8c20dfa258c549139fae2b21185ac290051c5"
+
+DESCRIPTION="Raspberry Pi userspace utilities"
+HOMEPAGE="https://github.com/raspberrypi/utils"
+SRC_URI="https://github.com/raspberrypi/utils/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="arm arm64"
+
+DEPEND="
+ sys-apps/dtc
+"
+
+RDEPEND="
+ ${DEPEND}
+ !media-libs/raspberrypi-userland
+ !media-libs/raspberrypi-userland-bin
+"
+
+S="${WORKDIR}/utils-${COMMIT}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-werror.patch
+)
+
+src_configure() {
+ local mycmakeargs=( -DBUILD_SHARED_LIBS=OFF )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ local SRC
+ rm -r "${ED}"/usr/share/bash-completion/ || die
+ for SRC in */*-completion.bash; do
+ local DEST=${SRC%-completion.bash}
+ newbashcomp "${SRC}" "${DEST##*/}"
+ done
+}
diff --git a/dev-embedded/rpi-eeprom/Manifest b/dev-embedded/rpi-eeprom/Manifest
index 0f47eba90fb7..f89d69a000ab 100644
--- a/dev-embedded/rpi-eeprom/Manifest
+++ b/dev-embedded/rpi-eeprom/Manifest
@@ -1,4 +1,4 @@
-DIST rpi-eeprom_13.3-1.debian.tar.xz 12768 BLAKE2B 823b1f25cda98cb2888b6b423b6120f5c1474735c58933ac11fe9380fa31fcbef260afb2ebcced423301bee207c171c5ccea3ba9c8cc4dae579c2dba55a60cba SHA512 0b8e15b1c827506dcdf7a6f19acd1ceb32f0901b9c438994af7f1e38a0ced05b7f123225ae8ecca4147ce04e1d7500ddcdfaeddeb90f0342af2dee9e4ffbfe04
-DIST rpi-eeprom_13.3.orig.tar.gz 17497524 BLAKE2B f65fc9b6a98dd3a4d3f4095e03279d832a64d0f12f9edd7e7af2b8afe8b290f4db6ec39e755df9fb5b317930235bf1c7205be4b3f838f6cbbf92e1d80574b342 SHA512 d5885444fd90a5f24c94a3af4f093744f4a63947a119059c851cd6639e572138205a48f7cd126c3deafe104e76985197e1fa36c8aa72a16bb173f11750b85151
-DIST rpi-eeprom_13.8-1.debian.tar.xz 13232 BLAKE2B a5c4a12eca86a5f44c6a18e06c3108a353adca055facd80ced42dfcdd518508358823bd31ef051b29dd47e46c59f056c36dc6628144c192eec26c57fc0658095 SHA512 dba8342af463a9d628a1f71dd30df803699a858873dc618a25aa4be682e5357d090345346ff686cb2c1bde7ad678362bf138f952115f186c841414354066a291
-DIST rpi-eeprom_13.8.orig.tar.gz 19328304 BLAKE2B 0cc9fcb2f30065494d8d4d8fd22930ad0229a38f67f02aa091269a099421c6e2781135c2a71dc10b2992832b443cc44e782f2bda424eb11539d0d6d858635129 SHA512 24675a0cc10f6ffc2e170da24999f5310ade1585618adfaf763b8dc1784639044bfdb5cbe513c3369056bb90c482ee65cd518b4161c54c0641feeb132552b1aa
+DIST rpi-eeprom_15.0-1.debian.tar.xz 10720 BLAKE2B c8915ebf859ebb1ea3a48af8077539a2513151f94b6965641970b717ad5a6693f4aa3867f241ce9cad5f47d371e7bfaaaa1e1fc34bad3e8059c7840bc5d567aa SHA512 92652b52eaf0d56c95ed23fcc5b4afe599e92d9331259d7450766cb53e06598bf3381a8716cf996c48fc2a20187523fc47e63aa365b2221c16284220042be3b8
+DIST rpi-eeprom_15.0.orig.tar.gz 29800286 BLAKE2B ceda9bdc412a32443d0cb3fa444d1091f0f53215a5be6c546384a11f7fa28592d43bdf23f04a33925601b5e76e510b054b214d262904f03aafa2b959fcb5fc1e SHA512 eddea0c8057e13991e3a6493146c8785607162342321d48048ba5760ecc7f1c6687a03edffcd0be4a5549c333cdbb20e88d407c4212334e18178fb86cc6cd0a4
+DIST rpi-eeprom_21.0-1.debian.tar.xz 11876 BLAKE2B 5615237244e259a269f62951402ecf54bf947ff22efee157f664ddc49d4c053081544e05960dd934246fdccdf079d62d1932428718e8ad5ade09d0675af58ff5 SHA512 af347630ea8e3fffb5e86539067ca1005e71aea48b43e009bd6b50c602696e08e27ca931efbbc66f26c9bf30c98abd3853a221e067888597cad01078a1335b26
+DIST rpi-eeprom_21.0.orig.tar.gz 41026148 BLAKE2B 5398cf2087b0f5e0d3a2d9f113dbc788f82ff281b36ecbbd1689408db9368083ce77ff88e62a7eaa12dc524debe2f0724f6f00cc23bfb61160ae557bacfae57a SHA512 fc237efa8932a04e44bd47ad6837e5aed7547e3a9e0e03e196df801c83e95618290c04de7ee3458e6465bb273171084c664d6daaa49515e1dcbcd05cb3022f2d
diff --git a/dev-embedded/rpi-eeprom/metadata.xml b/dev-embedded/rpi-eeprom/metadata.xml
index fe9bc40f6b9f..074fc1d440e5 100644
--- a/dev-embedded/rpi-eeprom/metadata.xml
+++ b/dev-embedded/rpi-eeprom/metadata.xml
@@ -16,4 +16,8 @@
<upstream>
<remote-id type="github">raspberrypi/rpi-eeprom</remote-id>
</upstream>
+ <use>
+ <flag name="pi4">Install firmware files for the Raspberry Pi 4</flag>
+ <flag name="pi5">Install firmware files for the Raspberry Pi 5</flag>
+ </use>
</pkgmetadata>
diff --git a/dev-embedded/rpi-eeprom/rpi-eeprom-13.3_p1-r1.ebuild b/dev-embedded/rpi-eeprom/rpi-eeprom-15.0_p1.ebuild
index de2223baedb2..528bfc276e3a 100644
--- a/dev-embedded/rpi-eeprom/rpi-eeprom-13.3_p1-r1.ebuild
+++ b/dev-embedded/rpi-eeprom/rpi-eeprom-15.0_p1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{9..11} )
inherit python-r1 systemd
diff --git a/dev-embedded/rpi-eeprom/rpi-eeprom-13.8_p1.ebuild b/dev-embedded/rpi-eeprom/rpi-eeprom-21.0_p1.ebuild
index 262839cd17ce..df7039c948b6 100644
--- a/dev-embedded/rpi-eeprom/rpi-eeprom-13.8_p1.ebuild
+++ b/dev-embedded/rpi-eeprom/rpi-eeprom-21.0_p1.ebuild
@@ -1,15 +1,15 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{9..12} )
inherit python-r1 systemd
MY_P="${PN}-$(ver_cut 1-2)"
MY_BASE_URL="https://archive.raspberrypi.org/debian/pool/main/r/${PN}/${PN}_$(ver_cut 1-2)"
-DESCRIPTION="Updater for Raspberry Pi 4 bootloader and the VL805 USB controller"
+DESCRIPTION="Updater for Raspberry Pi 4/5 bootloader and the VL805 USB controller"
HOMEPAGE="https://github.com/raspberrypi/rpi-eeprom/"
SRC_URI="${MY_BASE_URL}-$(ver_cut 4).debian.tar.xz
${MY_BASE_URL}.orig.tar.gz"
@@ -17,18 +17,19 @@ S="${WORKDIR}"
LICENSE="BSD rpi-eeprom"
SLOT="0"
-KEYWORDS="~arm ~arm64"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+KEYWORDS="arm arm64"
+IUSE="pi4 pi5"
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ ^^ ( pi4 pi5 )
+"
BDEPEND="sys-apps/help2man"
DEPEND="${PYTHON_DEPS}"
RDEPEND="${PYTHON_DEPS}
+ dev-embedded/raspberrypi-utils
sys-apps/flashrom
- sys-apps/pciutils
- || (
- >=media-libs/raspberrypi-userland-0_pre20201022
- >=media-libs/raspberrypi-userland-bin-1.20201022
- )"
+ sys-apps/pciutils"
src_prepare() {
default
@@ -40,6 +41,11 @@ src_prepare() {
"debian/rpi-eeprom.rpi-eeprom-update.service" || die "Failed sed on rpi-eeprom.rpi-eeprom-update.service"
}
+src_configure() {
+ use pi4 && export BROADCOM=2711
+ use pi5 && export BROADCOM=2712
+}
+
src_install() {
pushd "${MY_P}" 1>/dev/null || die "Cannot change into directory ${MY_P}"
@@ -49,12 +55,12 @@ src_install() {
dosbin rpi-eeprom-update rpi-eeprom-digest
keepdir /var/lib/raspberrypi/bootloader/backup
- for dir in critical stable beta; do
+ for dir in default latest critical stable beta; do
insinto /lib/firmware/raspberrypi/bootloader
- doins -r firmware/${dir}
+ doins -r firmware-$BROADCOM/${dir}
done
- dodoc firmware/release-notes.md
+ dodoc firmware-$BROADCOM/release-notes.md
help2man -N \
--version-string="${PV}" --help-option="-h" \
diff --git a/dev-embedded/sdcc/Manifest b/dev-embedded/sdcc/Manifest
index f2c7ac6c98a1..67c7abbe0abc 100644
--- a/dev-embedded/sdcc/Manifest
+++ b/dev-embedded/sdcc/Manifest
@@ -1,6 +1,10 @@
DIST sdcc-doc-3.8.0.tar.bz2 965465 BLAKE2B 541ed3ba4d3a23dd3fcea248de84d887fdcd8ddaf3ed0f9f810bf8cb9fcb5b10eb2cd96099d83c5a0fda240cdd3d11fd247e576a67a32047a4f7a705b8401637 SHA512 63319b7c344b320600e6a7c158d1a5e69abe595dfd6b8d32a95f15678c3bc2f6fe72c959516c4b1f812deb089854c6a51c31438ef6a6c7f9fcb4d419d8cce3cf
DIST sdcc-doc-4.0.0.tar.bz2 980999 BLAKE2B 6f9478c095e6b4fec27c6ab7a10a8564ae46d754709848b3a7a26a7a2dfecd3833ce3cfe7a41f9033b5a34a1b6e962090d91c9688294dd347e1c98658761c019 SHA512 83bed77b46ad2f028725a3ffe6090d71185f73d4e99c241e7ebd1c509ba1be1911f4b9130c344fa4eb928f48122179b6b71e9d5a27d9f18ff74017c61fae77ff
DIST sdcc-doc-4.1.0.tar.bz2 991207 BLAKE2B fd1ab82c8cc65031a8231bc4aba1e0562ed4b3178612a4d915568cb5600ba9159d89f905e261e860da9e0f4aa5a24fbd7ab1364f2f9f7b3078bcf3aa01d71ba5 SHA512 01686e590d0168108099d3c6c9bdb0885a25abccc9b6c87739eafec7103054424da1a5960a8d4566462dca9bf00cdd8b103ab6026523833d9aaa4d4bcdc5b620
+DIST sdcc-doc-4.2.0.tar.bz2 1244684 BLAKE2B d6ee4001ee0d2dde61dd1e8567499909fa6373eac93f3731fa1d6628f6e488742cc0798b1ebb908769d4cc52e091d4d685b3891d7c15a519294240643e528b02 SHA512 8494de35991e9a38ca138545b7c2396d353b21d67a4f321afa9187a5c117c6ce7d3c0850e95c981ccc7a3c8fa1e470f5e2351b84ccbe1634b1f8bf085cd45f76
+DIST sdcc-doc-4.3.0.tar.bz2 1271916 BLAKE2B a8c8018990ff2ae5504253f38a9de045b8a5227a60d76604394c286cb55d11b24f3ab97ed0a11d434c0b1ccb7e5340c33872c5ff5e677130e395b396a389f532 SHA512 088dce843c9e06380a8058b5253051e2a2442655be38435f15ed6754291e75d3f6e2b1a416e4f90dd865b2d89a9e1c59a2b9ee1422096132f49f038c527bcd19
DIST sdcc-src-3.8.0.tar.bz2 18987862 BLAKE2B 7e8ddea41ae02842bb1376c53364c386a0fb47a1acdcc97cc72f002e78a2854fc43adfd0177f94dd1173dbd81052c390c5b2fef302c73f0b830ec83eea70869c SHA512 38145ea3e9560eb8894c54bd7213da67a20163739c944c3247fa8fa456dfedaaa469746169d3e114affcab48b73db4cd8c9a0a367e7368f2471de64761a3e04a
DIST sdcc-src-4.0.0.tar.bz2 19204540 BLAKE2B 2192a7dc7418826440209dd8c7a73fd5ced491b799975b953368daeabb429327a6c518a1212a2fd49c34c6e5ab7d84f240cbf6ff8b3779e2d38f5ad81499ee71 SHA512 41a92711a9278261879caec1a01425104b7c75346b3c6ad9617cab025309c9b38f79eea2d04122f5ae6ce273fcd61fbde8a0d23756313a4593394230b51a1d4c
DIST sdcc-src-4.1.0.tar.bz2 19400609 BLAKE2B 9754d70026af595a5456f0d7c1b375df2716c6400ca59affcadbfd3588f4d51c45a3d52c235d6efc9b7512b5f94f023d8d2964cc0365cdff4586edf71fc51af1 SHA512 a9c3fee427cbc66b56a286c8d66b2922f79c9dfb42d2ed2843b2e192a6b314a04de4c82f1083d8625b49756b5f1d99f8fb706402b5f1284110760ec346303779
+DIST sdcc-src-4.2.0.tar.bz2 19662367 BLAKE2B a11d6b3af2552e0508bb1d0644d3e6db385634237fc93079716a5e3aa710bac25fd888e10dce76e6891ebe524f4d81d8318492001d8ce9ade0ef16d114adf14b SHA512 7ca4037d526b5fed7bbca4433835d0299ced7315dd69c1ec66cff873ec7caa41b69927363bf5850e2ad4f27ef6286e57f9ccd40bb6792308be6c3073c5238cba
+DIST sdcc-src-4.3.0.tar.bz2 19931677 BLAKE2B 94fc7ade96801ea6c9eb89d32b99554d27ad3d926d2d5889e91334b11d4658ccc160606cd2b1c6f3bb21bd25ea3df1dca274f40553aa8a52a73ac07764b3eaad SHA512 dabe276a0d2872bee2cdc14433f31a1e94153f9dce5a11add916ede2e76bfacf763be8e6d8134dc3aefdae29e38d3a7354626755e81e0f6db0e60c1798476f21
diff --git a/dev-embedded/sdcc/files/binutils-2.41-acinclude.m4 b/dev-embedded/sdcc/files/binutils-2.41-acinclude.m4
new file mode 100644
index 000000000000..03bc955c619b
--- /dev/null
+++ b/dev-embedded/sdcc/files/binutils-2.41-acinclude.m4
@@ -0,0 +1,193 @@
+dnl Copyright (C) 2000-2023 Free Software Foundation, Inc.
+dnl
+dnl GCC is free software; you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation; either version 3, or (at your option)
+dnl any later version.
+dnl
+dnl GCC is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with GCC; see the file COPYING3. If not see
+dnl <http://www.gnu.org/licenses/>.
+
+dnl See whether strncmp reads past the end of its string parameters.
+dnl On some versions of SunOS4 at least, strncmp reads a word at a time
+dnl but erroneously reads past the end of strings. This can cause
+dnl a SEGV in some cases.
+AC_DEFUN([libiberty_AC_FUNC_STRNCMP],
+[AC_REQUIRE([AC_FUNC_MMAP])
+AC_CACHE_CHECK([for working strncmp], ac_cv_func_strncmp_works,
+[AC_TRY_RUN([
+/* Test by Jim Wilson and Kaveh Ghazi.
+ Check whether strncmp reads past the end of its string parameters. */
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif
+
+#ifdef HAVE_SYS_MMAN_H
+#include <sys/mman.h>
+#endif
+
+#ifndef MAP_ANON
+#ifdef MAP_ANONYMOUS
+#define MAP_ANON MAP_ANONYMOUS
+#else
+#define MAP_ANON MAP_FILE
+#endif
+#endif
+
+#ifndef MAP_FILE
+#define MAP_FILE 0
+#endif
+#ifndef O_RDONLY
+#define O_RDONLY 0
+#endif
+
+#define MAP_LEN 0x10000
+
+int
+main (void)
+{
+#if defined(HAVE_MMAP) || defined(HAVE_MMAP_ANYWHERE)
+ char *p;
+ int dev_zero;
+
+ dev_zero = open ("/dev/zero", O_RDONLY);
+ if (dev_zero < 0)
+ exit (1);
+
+ p = (char *) mmap (0, MAP_LEN, PROT_READ|PROT_WRITE,
+ MAP_ANON|MAP_PRIVATE, dev_zero, 0);
+ if (p == (char *)-1)
+ p = (char *) mmap (0, MAP_LEN, PROT_READ|PROT_WRITE,
+ MAP_ANON|MAP_PRIVATE, -1, 0);
+ if (p == (char *)-1)
+ exit (2);
+ else
+ {
+ char *string = "__si_type_info";
+ char *q = (char *) p + MAP_LEN - strlen (string) - 2;
+ char *r = (char *) p + 0xe;
+
+ strcpy (q, string);
+ strcpy (r, string);
+ strncmp (r, q, 14);
+ }
+#endif /* HAVE_MMAP || HAVE_MMAP_ANYWHERE */
+ exit (0);
+}
+], ac_cv_func_strncmp_works=yes, ac_cv_func_strncmp_works=no,
+ ac_cv_func_strncmp_works=yes)
+rm -f core core.* *.core])
+if test $ac_cv_func_strncmp_works = no ; then
+ AC_LIBOBJ([strncmp])
+fi
+])
+
+dnl See if errno must be declared even when <errno.h> is included.
+AC_DEFUN([libiberty_AC_DECLARE_ERRNO],
+[AC_CACHE_CHECK(whether errno must be declared, libiberty_cv_declare_errno,
+[AC_TRY_COMPILE(
+[#include <errno.h>],
+[int x = errno;],
+libiberty_cv_declare_errno=no,
+libiberty_cv_declare_errno=yes)])
+if test $libiberty_cv_declare_errno = yes
+then AC_DEFINE(NEED_DECLARATION_ERRNO, 1,
+ [Define if errno must be declared even when <errno.h> is included.])
+fi
+])
+
+dnl See whether we need a declaration for a function.
+AC_DEFUN([libiberty_NEED_DECLARATION],
+[AC_MSG_CHECKING([whether $1 must be declared])
+AC_CACHE_VAL(libiberty_cv_decl_needed_$1,
+[AC_TRY_COMPILE([
+#include "confdefs.h"
+#include <stdio.h>
+#ifdef HAVE_STRING_H
+#include <string.h>
+#else
+#ifdef HAVE_STRINGS_H
+#include <strings.h>
+#endif
+#endif
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif],
+[char *(*pfn) = (char *(*)) $1],
+libiberty_cv_decl_needed_$1=no, libiberty_cv_decl_needed_$1=yes)])
+AC_MSG_RESULT($libiberty_cv_decl_needed_$1)
+if test $libiberty_cv_decl_needed_$1 = yes; then
+ AC_DEFINE([NEED_DECLARATION_]translit($1, [a-z], [A-Z]), 1,
+ [Define if $1 is not declared in system header files.])
+fi
+])dnl
+
+# We always want a C version of alloca() compiled into libiberty,
+# because native-compiler support for the real alloca is so !@#$%
+# unreliable that GCC has decided to use it only when being compiled
+# by GCC. This is the part of AC_FUNC_ALLOCA that calculates the
+# information alloca.c needs.
+AC_DEFUN([libiberty_AC_FUNC_C_ALLOCA],
+[AC_CACHE_CHECK(whether alloca needs Cray hooks, ac_cv_os_cray,
+[AC_EGREP_CPP(webecray,
+[#if defined(CRAY) && ! defined(CRAY2)
+webecray
+#else
+wenotbecray
+#endif
+], ac_cv_os_cray=yes, ac_cv_os_cray=no)])
+if test $ac_cv_os_cray = yes; then
+ for ac_func in _getb67 GETB67 getb67; do
+ AC_CHECK_FUNC($ac_func,
+ [AC_DEFINE_UNQUOTED(CRAY_STACKSEG_END, $ac_func,
+ [Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP
+ systems. This function is required for alloca.c support on those
+ systems.]) break])
+ done
+fi
+
+AC_CACHE_CHECK(stack direction for C alloca, ac_cv_c_stack_direction,
+[AC_TRY_RUN([#include <stdlib.h>
+
+int
+find_stack_direction (void)
+{
+ static char *addr = 0;
+ auto char dummy;
+ if (addr == 0)
+ {
+ addr = &dummy;
+ return find_stack_direction ();
+ }
+ else
+ return (&dummy > addr) ? 1 : -1;
+}
+
+int
+main (void)
+{
+ exit (find_stack_direction() < 0);
+}],
+ ac_cv_c_stack_direction=1,
+ ac_cv_c_stack_direction=-1,
+ ac_cv_c_stack_direction=0)])
+AC_DEFINE_UNQUOTED(STACK_DIRECTION, $ac_cv_c_stack_direction,
+ [Define if you know the direction of stack growth for your system;
+ otherwise it will be automatically deduced at run-time.
+ STACK_DIRECTION > 0 => grows toward higher addresses
+ STACK_DIRECTION < 0 => grows toward lower addresses
+ STACK_DIRECTION = 0 => direction of growth unknown])
+])
diff --git a/dev-embedded/sdcc/files/sdcc-4.2.0-link-tinfo.patch b/dev-embedded/sdcc/files/sdcc-4.2.0-link-tinfo.patch
new file mode 100644
index 000000000000..a8f4ae7565bc
--- /dev/null
+++ b/dev-embedded/sdcc/files/sdcc-4.2.0-link-tinfo.patch
@@ -0,0 +1,24 @@
+Link -ltinfo for ucsim
+
+/usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/dev-embedded/sdcc-4.2.0/temp/cc3R2ckl.ltrans0.ltrans.o: undefined reference to symbol 'nodelay'
+/usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /lib64/libtinfo.so.6: error adding symbols: DSO missing from command line
+
+--- sdcc-4.2.0.orig/sim/ucsim/configure.ac
++++ sdcc-4.2.0/sim/ucsim/configure.ac
+@@ -405,14 +405,14 @@
+ if test $curses_ok != yes; then
+ AC_CHECK_LIB(curses,nl,
+ curses_ok="yes"
+- CURSES_LIBS="${CURSES_LIBS} -lcurses",
++ CURSES_LIBS="${CURSES_LIBS} -lcurses -ltinfo",
+ curses_ok="no")
+ fi
+
+ if test $curses_ok != yes; then
+ AC_CHECK_LIB(ncurses,nl,
+ curses_ok="yes"
+- CURSES_LIBS="${CURSES_LIBS} -lncurses",
++ CURSES_LIBS="${CURSES_LIBS} -lncurses -ltinfo",
+ curses_ok="no")
+ fi
+ fi
diff --git a/dev-embedded/sdcc/files/sdcc-4.3.0-autoreconf-libiberty.patch b/dev-embedded/sdcc/files/sdcc-4.3.0-autoreconf-libiberty.patch
new file mode 100644
index 000000000000..7383f471ca48
--- /dev/null
+++ b/dev-embedded/sdcc/files/sdcc-4.3.0-autoreconf-libiberty.patch
@@ -0,0 +1,15 @@
+Most implicit function declarations left come from the included libiberty.
+Add it to eautoreconf to regenerate its tests.
+https://bugs.gentoo.org/898594
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -874,7 +874,7 @@
+ test $OPT_DISABLE_PACKIHX = 0 && AC_CONFIG_SUBDIRS(support/packihx)
+ test $OPT_DISABLE_UCSIM = 0 && AC_CONFIG_SUBDIRS(sim/ucsim)
+ test $OPT_DISABLE_SDCDB = 0 && AC_CONFIG_SUBDIRS(debugger/mcs51)
+-test $OPT_DISABLE_SDBINUTILS = 0 && AC_CONFIG_SUBDIRS(support/sdbinutils)
++test $OPT_DISABLE_SDBINUTILS = 0 && AC_CONFIG_SUBDIRS(support/sdbinutils support/sdbinutils/libiberty)
+ AC_CONFIG_FILES([doc/Makefile])
+
+ ####test $OPT_DISABLE_AVR = 0 && AC_CONFIG_FILES([src/avr/Makefile])
diff --git a/dev-embedded/sdcc/files/sdcc-4.3.0-fix-binutils-dependency.patch b/dev-embedded/sdcc/files/sdcc-4.3.0-fix-binutils-dependency.patch
new file mode 100644
index 000000000000..cae5ebe473ed
--- /dev/null
+++ b/dev-embedded/sdcc/files/sdcc-4.3.0-fix-binutils-dependency.patch
@@ -0,0 +1,22 @@
+https://bugs.gentoo.org/917114
+https://sourceforge.net/p/sdcc/support-requests/193/
+
+--- sdcc/Makefile.in
++++ sdcc/Makefile.in
+@@ -98,7 +98,6 @@
+ ifeq ($(OPT_DISABLE_SDBINUTILS), 0)
+ TARGETS += sdcc-sdbinutils
+ PKGS += $(SDCC_SDBINUTILS)
+-SDBINUTILS_BINS = sdar$(EXEEXT) sdranlib$(EXEEXT) sdnm$(EXEEXT) sdobjcopy$(EXEEXT)
+ SDCC_BINUTILS = sdcc-sdbinutils
+ endif
+
+@@ -142,7 +141,7 @@
+
+ tini: checkconf sdcc-tini
+
+-sdcc-libs: ${SDCC_SDBINUTILS}
++sdcc-libs: ${SDCC_BINUTILS}
+ for lib in $(SDCC_LIBS); do $(MAKE) -C $$lib; done
+
+ sdcc-cc: sdcc-libs
diff --git a/dev-embedded/sdcc/files/sdcc-4.3.0-fix-mkdir-autoconf-test.patch b/dev-embedded/sdcc/files/sdcc-4.3.0-fix-mkdir-autoconf-test.patch
new file mode 100644
index 000000000000..9a0be653ba28
--- /dev/null
+++ b/dev-embedded/sdcc/files/sdcc-4.3.0-fix-mkdir-autoconf-test.patch
@@ -0,0 +1,13 @@
+Fix implicit function declaration in configure logs: mkdir
+https://bugs.gentoo.org/898594
+
+--- a/support/cpp/configure.ac
++++ b/support/cpp/configure.ac
+@@ -2317,6 +2317,7 @@
+ ################################################################################
+
+ # mkdir takes a single argument on some systems.
++AC_CHECK_HEADERS([sys/stat.h])
+ gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG
+
+ # File extensions
diff --git a/dev-embedded/sdcc/files/sdcc-4.3.2-override-override.patch b/dev-embedded/sdcc/files/sdcc-4.3.2-override-override.patch
new file mode 100644
index 000000000000..8a0e587f5f6b
--- /dev/null
+++ b/dev-embedded/sdcc/files/sdcc-4.3.2-override-override.patch
@@ -0,0 +1,62 @@
+https://bugs.gentoo.org/911463
+
+--- a/support/sdbinutils/config/override.m4
++++ b/support/sdbinutils/config/override.m4
+@@ -27,27 +27,6 @@
+ m4_copy_force([_AC_PREREQ], [AC_PREREQ])
+
+
+-dnl Ensure exactly this Autoconf version is used
+-m4_ifndef([_GCC_AUTOCONF_VERSION],
+- [m4_define([_GCC_AUTOCONF_VERSION], [2.69])])
+-
+-dnl Test for the exact version when AC_INIT is expanded.
+-dnl This allows one to update the tree in steps (for testing)
+-dnl by putting
+-dnl m4_define([_GCC_AUTOCONF_VERSION], [X.Y])
+-dnl in configure.ac before AC_INIT,
+-dnl without rewriting this file.
+-dnl Or for updating the whole tree at once with the definition above.
+-AC_DEFUN([_GCC_AUTOCONF_VERSION_CHECK],
+-[m4_if(m4_defn([_GCC_AUTOCONF_VERSION]),
+- m4_defn([m4_PACKAGE_VERSION]), [],
+- [m4_fatal([Please use exactly Autoconf ]_GCC_AUTOCONF_VERSION[ instead of ]m4_defn([m4_PACKAGE_VERSION])[.])])
+-])
+-m4_define([AC_INIT], m4_defn([AC_INIT])[
+-_GCC_AUTOCONF_VERSION_CHECK
+-])
+-
+-
+ dnl Ensure we do not use a buggy M4.
+ m4_if(m4_index([..wi.d.], [.d.]), [-1],
+ [m4_fatal(m4_do([m4 with buggy strstr detected. Please install
+--- a/support/cpp/config/override.m4
++++ b/support/cpp/config/override.m4
+@@ -27,27 +27,6 @@
+ m4_copy_force([_AC_PREREQ], [AC_PREREQ])
+
+
+-dnl Ensure exactly this Autoconf version is used
+-m4_ifndef([_GCC_AUTOCONF_VERSION],
+- [m4_define([_GCC_AUTOCONF_VERSION], [2.69])])
+-
+-dnl Test for the exact version when AC_INIT is expanded.
+-dnl This allows to update the tree in steps (for testing)
+-dnl by putting
+-dnl m4_define([_GCC_AUTOCONF_VERSION], [X.Y])
+-dnl in configure.ac before AC_INIT,
+-dnl without rewriting this file.
+-dnl Or for updating the whole tree at once with the definition above.
+-AC_DEFUN([_GCC_AUTOCONF_VERSION_CHECK],
+-[m4_if(m4_defn([_GCC_AUTOCONF_VERSION]),
+- m4_defn([m4_PACKAGE_VERSION]), [],
+- [m4_fatal([Please use exactly Autoconf ]_GCC_AUTOCONF_VERSION[ instead of ]m4_defn([m4_PACKAGE_VERSION])[.])])
+-])
+-m4_define([AC_INIT], m4_defn([AC_INIT])[
+-_GCC_AUTOCONF_VERSION_CHECK
+-])
+-
+-
+ dnl Ensure we do not use a buggy M4.
+ m4_if(m4_index([..wi.d.], [.d.]), [-1],
+ [m4_fatal(m4_do([m4 with buggy strstr detected. Please install
diff --git a/dev-embedded/sdcc/metadata.xml b/dev-embedded/sdcc/metadata.xml
index 573753d73430..c4bc3f3380ae 100644
--- a/dev-embedded/sdcc/metadata.xml
+++ b/dev-embedded/sdcc/metadata.xml
@@ -6,12 +6,14 @@
<name>Embedded Gentoo</name>
</maintainer>
<longdescription>
-SDCC is a retargettable, optimizing ANSI - C compiler suite that targets the
-Intel MCS51 based microprocessors (8031, 8032, 8051, 8052, etc.), Maxim
-(formerly Dallas) DS80C390 variants, Freescale (formerly Motorola) HC08 based
-(hc08, s08), Zilog Z80 based MCUs (z80, z180, gbz80, Rabbit 2000/3000, Rabbit
-3000A, TLCS-90) and STMicroelectronics STM8. It can be retargeted for other
-microprocessors.
+SDCC is a retargettable, optimizing Standard C (ANSI C89, ISO C99, ISO C11)
+compiler suite that targets the Intel MCS51 based microprocessors (8031, 8032,
+8051, 8052, etc.), Maxim (formerly Dallas) DS80C390 variants, Freescale
+(formerly Motorola) HC08 based (hc08, s08), Zilog Z80 based MCUs (Z80, Z180,
+SM83, Rabbit 2000, 2000A, 3000A, TLCS-90), Padauk (pdk14, pdk15) and
+STMicroelectronics STM8. Work is in progress on supporting the Padauk pdk13 and
+MOS 6502 targets; Microchip PIC16 and PIC18 targets are unmaintained. SDCC can
+be retargeted for other microprocessors.
</longdescription>
<upstream>
<remote-id type="sourceforge">sdcc</remote-id>
@@ -35,6 +37,7 @@ microprocessors.
<flag name="r2ka">Add support for Rabbit 2000A</flag>
<flag name="r3ka">Add support for Rabbit 3000A</flag>
<flag name="gbz80">Add support for Gameboy gbz80</flag>
+ <flag name="sm83">Add support for Gameboy SM83</flag>
<flag name="tlcs90">Add support for TLCS-90</flag>
<flag name="ez80-z80">Add support for EZ80-Z80</flag>
<flag name="z80n">Add support for Zilog Z80N</flag>
@@ -49,5 +52,7 @@ microprocessors.
<flag name="pdk14">Add support for PDK14</flag>
<flag name="pdk15">Add support for PDK15</flag>
<flag name="pdk16">Add support for PDK16</flag>
+ <flag name="mos6502">Add support for MOS 6502</flag>
+ <flag name="mos65c02">Add support for MOS 65C02</flag>
</use>
</pkgmetadata>
diff --git a/dev-embedded/sdcc/sdcc-3.8.0-r1.ebuild b/dev-embedded/sdcc/sdcc-3.8.0-r1.ebuild
index c4850e617289..f3916194c922 100644
--- a/dev-embedded/sdcc/sdcc-3.8.0-r1.ebuild
+++ b/dev-embedded/sdcc/sdcc-3.8.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -16,7 +16,7 @@ else
fi
DESCRIPTION="Small device C compiler (for various microprocessors)"
-HOMEPAGE="http://sdcc.sourceforge.net/"
+HOMEPAGE="https://sdcc.sourceforge.net/"
LICENSE="
GPL-2 ZLIB
diff --git a/dev-embedded/sdcc/sdcc-4.0.0.ebuild b/dev-embedded/sdcc/sdcc-4.0.0.ebuild
index 42f67b831e1a..dcb2ee1132ef 100644
--- a/dev-embedded/sdcc/sdcc-4.0.0.ebuild
+++ b/dev-embedded/sdcc/sdcc-4.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -16,7 +16,7 @@ else
fi
DESCRIPTION="Small device C compiler (for various microprocessors)"
-HOMEPAGE="http://sdcc.sourceforge.net/"
+HOMEPAGE="https://sdcc.sourceforge.net/"
LICENSE="
GPL-2 ZLIB
diff --git a/dev-embedded/sdcc/sdcc-4.1.0.ebuild b/dev-embedded/sdcc/sdcc-4.1.0.ebuild
index 9b5bf53b05db..2be8c0e650ae 100644
--- a/dev-embedded/sdcc/sdcc-4.1.0.ebuild
+++ b/dev-embedded/sdcc/sdcc-4.1.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -19,7 +19,7 @@ else
fi
DESCRIPTION="Small device C compiler (for various microprocessors)"
-HOMEPAGE="http://sdcc.sourceforge.net/"
+HOMEPAGE="https://sdcc.sourceforge.net/"
LICENSE="
GPL-2 ZLIB
diff --git a/dev-embedded/sdcc/sdcc-4.2.0.ebuild b/dev-embedded/sdcc/sdcc-4.2.0.ebuild
new file mode 100644
index 000000000000..674b5e4b92f3
--- /dev/null
+++ b/dev-embedded/sdcc/sdcc-4.2.0.ebuild
@@ -0,0 +1,158 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+if [[ ${PV} == "9999" ]] ; then
+ ESVN_REPO_URI="https://svn.code.sf.net/p/sdcc/code/trunk/sdcc"
+ inherit subversion
+else
+ SRC_URI="
+ https://downloads.sourceforge.net/project/${PN}/sdcc/${PV}/${PN}-src-${PV}.tar.bz2
+ doc? ( https://downloads.sourceforge.net/project/${PN}/sdcc-doc/${PV}/${PN}-doc-${PV}.tar.bz2 )
+ "
+
+ KEYWORDS="amd64 x86"
+fi
+
+DESCRIPTION="Small device C compiler (for various microprocessors)"
+HOMEPAGE="https://sdcc.sourceforge.net/"
+
+LICENSE="
+ GPL-2 ZLIB
+ non-free? ( MicroChip-SDCC )
+ packihx? ( public-domain )
+"
+SLOT="0"
+# in order of configure.ac's AC_DO_PORT stanzas
+SDCC_PORTS="
+ mcs51
+ z80 z180
+ r2k r2ka r3ka
+ sm83
+ tlcs90
+ ez80-z80
+ z80n
+ ds390 ds400
+ pic14 pic16
+ hc08
+ s08
+ stm8
+ pdk13 pdk14 pdk15 pdk16
+ mos6502 mos65c02
+"
+IUSE="
+ ${SDCC_PORTS}
+ +boehm-gc device-lib doc non-free packihx sdcdb +sdcpp ucsim
+"
+
+RDEPEND="
+ dev-libs/boost:=
+ sys-libs/zlib:=
+ pic14? ( >=dev-embedded/gputils-0.13.7 )
+ pic16? ( >=dev-embedded/gputils-0.13.7 )
+ boehm-gc? ( dev-libs/boehm-gc:= )
+ sdcdb? ( sys-libs/readline:0= )
+ ucsim? ( sys-libs/ncurses:= )
+"
+DEPEND="
+ ${RDEPEND}
+ dev-util/gperf
+"
+PATCHES=(
+ "${FILESDIR}"/sdcc-3.8.0-override-override.patch
+ "${FILESDIR}"/sdcc-4.2.0-link-tinfo.patch
+)
+
+src_prepare() {
+ # Fix conflicting variable names between Gentoo and sdcc
+ find device/lib/pic{14,16} device/non-free/lib/pic{14,16} \( \
+ -name 'configure.ac' -o -name 'Makefile.*' \) \
+ -exec sed -i 's/\<ARCH\>/SDCC_&/g' {} + || die
+ find device -name 'Makefile.in' \
+ -exec sed -i 's/\<PORTDIR\>/SDCC_&/g' {} + || die
+ # Possible alternative: Patch the following files to not pick up the
+ # variables from the environment:
+ # - lib/Makefile.in (PORTDIR ifndef/endif)
+ # - device/non-free/lib/pic14/Makefile.common.in (ARCH ?= 877)
+ # - device/non-free/lib/pic16/configure.ac (${ARCH:-18f452})
+ # - device/lib/pic14/configure.ac (${ARCH:-16f877})
+ # - device/lib/pic16/configure.ac (${ARCH:-18f452})
+
+ # Make sure timestamps don't get messed up.
+ [[ ${PV} == "9999" ]] && find "${S}" -type f -exec touch -r . {} +
+
+ default
+ eautoreconf
+
+ # Avoid 'bfd.info' rebuild with 'makeinfo': bug #705424
+ # Build dependencies are: eautoreconf->Makefile.in->bfdver.texi->bfd.info
+ touch support/sdbinutils/bfd/doc/bfdver.texi || die
+ touch support/sdbinutils/bfd/doc/bfd.info || die
+}
+
+src_configure() {
+ local myeconfargs=(
+ ac_cv_prog_STRIP=true
+ --without-ccache
+ --enable-sdbinutils
+
+ $(use_enable ucsim)
+ $(use_enable device-lib)
+ $(use_enable packihx)
+ $(use_enable sdcpp)
+ $(use_enable sdcdb)
+ $(use_enable non-free)
+ $(use_enable boehm-gc libgc)
+
+ $(use_enable mcs51 mcs51-port)
+ $(use_enable z80 z80-port)
+ $(use_enable z180 z180-port)
+ $(use_enable r2k r2k-port)
+ $(use_enable r2ka r2ka-port)
+ $(use_enable r3ka r3ka-port)
+ $(use_enable sm83 sm83-port)
+ $(use_enable tlcs90 tlcs90-port)
+ $(use_enable ez80-z80 ez80_z80-port)
+ $(use_enable z80n z80n-port)
+ $(use_enable ds390 ds390-port)
+ $(use_enable ds400 ds400-port)
+ $(use_enable pic14 pic14-port)
+ $(use_enable pic16 pic16-port)
+ $(use_enable hc08 hc08-port)
+ $(use_enable s08 s08-port)
+ $(use_enable stm8 stm8-port)
+ $(use_enable pdk13 pdk13-port)
+ $(use_enable pdk14 pdk14-port)
+ $(use_enable pdk15 pdk15-port)
+ $(use_enable pdk16 pdk16-port)
+ $(use_enable mos6502 mos6502-port)
+ $(use_enable mos65c02 mos65c02-port)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ default
+
+ # Sanity check, as gputils errors/segfaults don't cause make to stop
+ local libs=()
+ use pic14 && libs+=( device/lib/build/pic14/libsdcc.lib )
+ use pic16 && libs+=( device/lib/build/pic16/libsdcc.lib )
+ for lib in "${libs[@]}"; do
+ [[ -f "${lib}" ]] || die "Failed to build ${lib}"
+ done
+}
+
+src_install() {
+ default
+ dodoc doc/*.txt
+ find "${ED}" -type d -name .deps -exec rm -vr {} + || die
+
+ if use doc && [[ ${PV} != "9999" ]]; then
+ cd "${WORKDIR}"/doc
+ dodoc -r *
+ fi
+}
diff --git a/dev-embedded/sdcc/sdcc-4.3.0-r1.ebuild b/dev-embedded/sdcc/sdcc-4.3.0-r1.ebuild
new file mode 100644
index 000000000000..3aa25dab19f1
--- /dev/null
+++ b/dev-embedded/sdcc/sdcc-4.3.0-r1.ebuild
@@ -0,0 +1,179 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+if [[ ${PV} == "9999" ]] ; then
+ ESVN_REPO_URI="https://svn.code.sf.net/p/sdcc/code/trunk/sdcc"
+ inherit subversion
+else
+ SRC_URI="
+ https://downloads.sourceforge.net/project/${PN}/sdcc/${PV}/${PN}-src-${PV}.tar.bz2
+ doc? ( https://downloads.sourceforge.net/project/${PN}/sdcc-doc/${PV}/${PN}-doc-${PV}.tar.bz2 )
+ "
+
+ KEYWORDS="amd64 x86"
+fi
+
+DESCRIPTION="Small device C compiler (for various microprocessors)"
+HOMEPAGE="https://sdcc.sourceforge.net/"
+
+LICENSE="
+ GPL-2 ZLIB
+ non-free? ( MicroChip-SDCC )
+ packihx? ( public-domain )
+"
+SLOT="0"
+# in order of configure.ac's AC_DO_PORT stanzas
+SDCC_PORTS="
+ mcs51
+ z80 z180
+ r2k r2ka r3ka
+ sm83
+ tlcs90
+ ez80-z80
+ z80n
+ ds390 ds400
+ pic14 pic16
+ hc08
+ s08
+ stm8
+ pdk13 pdk14 pdk15 pdk16
+ mos6502 mos65c02
+"
+IUSE="
+ ${SDCC_PORTS}
+ +boehm-gc device-lib doc non-free packihx sdcdb +sdcpp ucsim
+"
+
+RDEPEND="
+ dev-libs/boost:=
+ sys-libs/zlib:=
+ pic14? ( >=dev-embedded/gputils-0.13.7 )
+ pic16? ( >=dev-embedded/gputils-0.13.7 )
+ boehm-gc? ( dev-libs/boehm-gc:= )
+ sdcdb? ( sys-libs/readline:0= )
+ ucsim? ( sys-libs/ncurses:= )
+"
+DEPEND="
+ ${RDEPEND}
+ dev-util/gperf
+"
+PATCHES=(
+ "${FILESDIR}"/sdcc-4.3.2-override-override.patch
+ "${FILESDIR}"/sdcc-4.2.0-link-tinfo.patch
+ "${FILESDIR}"/${P}-fix-binutils-dependency.patch
+ "${FILESDIR}"/${P}-fix-mkdir-autoconf-test.patch
+ "${FILESDIR}"/${P}-autoreconf-libiberty.patch
+)
+
+src_prepare() {
+ # Fix conflicting variable names between Gentoo and sdcc
+ find device/lib/pic{14,16} device/non-free/lib/pic{14,16} \( \
+ -name 'configure.ac' -o -name 'Makefile.*' \) \
+ -exec sed -i 's/\<ARCH\>/SDCC_&/g' {} + || die
+ find device -name 'Makefile.in' \
+ -exec sed -i 's/\<PORTDIR\>/SDCC_&/g' {} + || die
+ # Possible alternative: Patch the following files to not pick up the
+ # variables from the environment:
+ # - lib/Makefile.in (PORTDIR ifndef/endif)
+ # - device/non-free/lib/pic14/Makefile.common.in (ARCH ?= 877)
+ # - device/non-free/lib/pic16/configure.ac (${ARCH:-18f452})
+ # - device/lib/pic14/configure.ac (${ARCH:-16f877})
+ # - device/lib/pic16/configure.ac (${ARCH:-18f452})
+
+ # Make sure timestamps don't get messed up.
+ [[ ${PV} == "9999" ]] && find "${S}" -type f -exec touch -r . {} +
+
+ mkdir -p support/sdbinutils/bfd/doc || die
+
+ # add acinclude.m4 from binutils to run autoreconf for libiberty
+ cp "${FILESDIR}"/binutils-2.41-acinclude.m4 support/sdbinutils/libiberty/acinclude.m4 || die
+ # libiberty configure will check this file and fail if not found
+ cp install-sh support/sdbinutils/libiberty/ || die
+ # libiberty configure will fail if this was not set
+ export libiberty_topdir="${S}"/support/sdbinutils/libiberty
+
+ # this does not build: https://sourceforge.net/p/sdcc/bugs/3673/
+ # disable for now
+ sed 's:device/lib/mos65c02/Makefile::' -i configure.ac || die
+
+ default
+ eautoreconf
+
+ # Avoid 'bfd.info' rebuild with 'makeinfo': bug #705424
+ # Build dependencies are: eautoreconf->Makefile.in->bfdver.texi->bfd.info
+ touch support/sdbinutils/bfd/doc/bfdver.texi || die
+ touch support/sdbinutils/bfd/doc/bfd.info || die
+}
+
+src_configure() {
+ # -Werror=odr, -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/924691
+ # https://sourceforge.net/p/sdcc/bugs/3725/
+ filter-lto
+
+ local myeconfargs=(
+ ac_cv_prog_STRIP=true
+ --without-ccache
+ --enable-sdbinutils
+
+ $(use_enable ucsim)
+ $(use_enable device-lib)
+ $(use_enable packihx)
+ $(use_enable sdcpp)
+ $(use_enable sdcdb)
+ $(use_enable non-free)
+ $(use_enable boehm-gc libgc)
+
+ $(use_enable mcs51 mcs51-port)
+ $(use_enable z80 z80-port)
+ $(use_enable z180 z180-port)
+ $(use_enable r2k r2k-port)
+ $(use_enable r2ka r2ka-port)
+ $(use_enable r3ka r3ka-port)
+ $(use_enable sm83 sm83-port)
+ $(use_enable tlcs90 tlcs90-port)
+ $(use_enable ez80-z80 ez80_z80-port)
+ $(use_enable z80n z80n-port)
+ $(use_enable ds390 ds390-port)
+ $(use_enable ds400 ds400-port)
+ $(use_enable pic14 pic14-port)
+ $(use_enable pic16 pic16-port)
+ $(use_enable hc08 hc08-port)
+ $(use_enable s08 s08-port)
+ $(use_enable stm8 stm8-port)
+ $(use_enable pdk13 pdk13-port)
+ $(use_enable pdk14 pdk14-port)
+ $(use_enable pdk15 pdk15-port)
+ $(use_enable pdk16 pdk16-port)
+ $(use_enable mos6502 mos6502-port)
+ $(use_enable mos65c02 mos65c02-port)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ default
+
+ # Sanity check, as gputils errors/segfaults don't cause make to stop
+ local libs=()
+ use pic14 && libs+=( device/lib/build/pic14/libsdcc.lib )
+ use pic16 && libs+=( device/lib/build/pic16/libsdcc.lib )
+ for lib in "${libs[@]}"; do
+ [[ -f "${lib}" ]] || die "Failed to build ${lib}"
+ done
+}
+
+src_install() {
+ default
+ dodoc doc/*.txt
+ find "${ED}" -type d -name .deps -exec rm -vr {} + || die
+
+ if use doc && [[ ${PV} != "9999" ]]; then
+ cd "${WORKDIR}"/doc
+ dodoc -r *
+ fi
+}
diff --git a/dev-embedded/sdcc/sdcc-9999.ebuild b/dev-embedded/sdcc/sdcc-9999.ebuild
index 9b5bf53b05db..72705ab05c30 100644
--- a/dev-embedded/sdcc/sdcc-9999.ebuild
+++ b/dev-embedded/sdcc/sdcc-9999.ebuild
@@ -1,25 +1,24 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit autotools toolchain-funcs
+inherit autotools flag-o-matic
if [[ ${PV} == "9999" ]] ; then
ESVN_REPO_URI="https://svn.code.sf.net/p/sdcc/code/trunk/sdcc"
inherit subversion
else
SRC_URI="
- mirror://sourceforge/sdcc/${PN}-src-${PV}.tar.bz2
- doc? ( mirror://sourceforge/sdcc/${PN}-doc-${PV}.tar.bz2 )
+ https://downloads.sourceforge.net/project/${PN}/sdcc/${PV}/${PN}-src-${PV}.tar.bz2
+ doc? ( https://downloads.sourceforge.net/project/${PN}/sdcc-doc/${PV}/${PN}-doc-${PV}.tar.bz2 )
"
- S="${WORKDIR}/sdcc"
KEYWORDS="~amd64 ~x86"
fi
DESCRIPTION="Small device C compiler (for various microprocessors)"
-HOMEPAGE="http://sdcc.sourceforge.net/"
+HOMEPAGE="https://sdcc.sourceforge.net/"
LICENSE="
GPL-2 ZLIB
@@ -29,11 +28,10 @@ LICENSE="
SLOT="0"
# in order of configure.ac's AC_DO_PORT stanzas
SDCC_PORTS="
- avr
mcs51
z80 z180
r2k r2ka r3ka
- gbz80
+ sm83
tlcs90
ez80-z80
z80n
@@ -43,51 +41,50 @@ SDCC_PORTS="
s08
stm8
pdk13 pdk14 pdk15 pdk16
+ mos6502 mos65c02
"
IUSE="
${SDCC_PORTS}
- +boehm-gc device-lib doc non-free packihx +sdbinutils sdcdb +sdcpp ucsim
+ +boehm-gc device-lib doc non-free packihx sdcdb +sdcpp ucsim
"
-for port in ${SDCC_PORTS}; do
-REQUIRED_USE="${REQUIRED_USE}
- ${port}? ( sdbinutils )
-"
-done
-REQUIRED_USE="${REQUIRED_USE}
- || ( ${SDCC_PORTS} )
-"
-
-RESTRICT="strip"
-
RDEPEND="
dev-libs/boost:=
- sys-libs/ncurses:=
- sys-libs/readline:0=
+ sys-libs/zlib:=
pic14? ( >=dev-embedded/gputils-0.13.7 )
pic16? ( >=dev-embedded/gputils-0.13.7 )
boehm-gc? ( dev-libs/boehm-gc:= )
- !dev-embedded/sdcc-svn
+ sdcdb? ( sys-libs/readline:0= )
+ ucsim? ( sys-libs/ncurses:= )
"
DEPEND="
${RDEPEND}
dev-util/gperf
"
PATCHES=(
- "${FILESDIR}"/${PN}-3.8.0-override-override.patch
+ "${FILESDIR}"/sdcc-4.3.2-override-override.patch
)
src_prepare() {
# Fix conflicting variable names between Gentoo and sdcc
- find \
- '(' -name 'Makefile*.in' -o -name 'configure' ')' \
- -exec sed -r -i \
- -e 's:\<(PORTDIR|ARCH)\>:SDCC\1:g' \
- {} + || die
+ find device/lib/pic{14,16} device/non-free/lib/pic{14,16} \( \
+ -name 'configure.ac' -o -name 'Makefile.*' \) \
+ -exec sed -i 's/\<ARCH\>/SDCC_&/g' {} + || die
+ find device -name 'Makefile.in' \
+ -exec sed -i 's/\<PORTDIR\>/SDCC_&/g' {} + || die
+ # Possible alternative: Patch the following files to not pick up the
+ # variables from the environment:
+ # - lib/Makefile.in (PORTDIR ifndef/endif)
+ # - device/non-free/lib/pic14/Makefile.common.in (ARCH ?= 877)
+ # - device/non-free/lib/pic16/configure.ac (${ARCH:-18f452})
+ # - device/lib/pic14/configure.ac (${ARCH:-16f877})
+ # - device/lib/pic16/configure.ac (${ARCH:-18f452})
# Make sure timestamps don't get messed up.
[[ ${PV} == "9999" ]] && find "${S}" -type f -exec touch -r . {} +
+ mkdir -p support/sdbinutils/bfd/doc || die
+
default
eautoreconf
@@ -98,60 +95,70 @@ src_prepare() {
}
src_configure() {
- # sdbinutils subdir doesn't pass down --docdir properly, so need to
- # expand $(datarootdir) ourselves.
- econf \
- ac_cv_prog_AR="$(tc-getAR)" \
- ac_cv_prog_AS="$(tc-getAS)" \
- ac_cv_prog_STRIP=true \
- $(use_enable boehm-gc libgc) \
- $(use_enable device-lib) \
- $(use_enable non-free) \
- $(use_enable packihx) \
- $(use_enable sdbinutils) \
- $(use_enable sdcdb) \
- $(use_enable sdcpp) \
- $(use_enable ucsim) \
- \
- $(use_enable avr avr-port) \
- $(use_enable mcs51 mcs51-port) \
- $(use_enable z80 z80-port) \
- $(use_enable z180 z180-port) \
- $(use_enable r2k r2k-port) \
- $(use_enable r2ka r2ka-port) \
- $(use_enable r3ka r3ka-port) \
- $(use_enable gbz80 gbz80-port) \
- $(use_enable tlcs90 tlcs90-port) \
- $(use_enable ez80-z80 ez80_z80-port) \
- $(use_enable z80n z80n-port) \
- $(use_enable ds390 ds390-port) \
- $(use_enable ds400 ds400-port) \
- $(use_enable pic14 pic14-port) \
- $(use_enable pic16 pic16-port) \
- $(use_enable hc08 hc08-port) \
- $(use_enable s08 s08-port) \
- $(use_enable stm8 stm8-port) \
- $(use_enable pdk13 pdk13-port) \
- $(use_enable pdk14 pdk14-port) \
- $(use_enable pdk15 pdk15-port) \
- $(use_enable pdk16 pdk16-port) \
- \
- --disable-doc \
+ # -Werror=odr, -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/924691
+ # https://sourceforge.net/p/sdcc/bugs/3725/
+ filter-lto
+
+ local myeconfargs=(
+ ac_cv_prog_STRIP=true
--without-ccache
+ --enable-sdbinutils
+
+ $(use_enable ucsim)
+ $(use_enable device-lib)
+ $(use_enable packihx)
+ $(use_enable sdcpp)
+ $(use_enable sdcdb)
+ $(use_enable non-free)
+ $(use_enable boehm-gc libgc)
+
+ $(use_enable mcs51 mcs51-port)
+ $(use_enable z80 z80-port)
+ $(use_enable z180 z180-port)
+ $(use_enable r2k r2k-port)
+ $(use_enable r2ka r2ka-port)
+ $(use_enable r3ka r3ka-port)
+ $(use_enable sm83 sm83-port)
+ $(use_enable tlcs90 tlcs90-port)
+ $(use_enable ez80-z80 ez80_z80-port)
+ $(use_enable z80n z80n-port)
+ $(use_enable ds390 ds390-port)
+ $(use_enable ds400 ds400-port)
+ $(use_enable pic14 pic14-port)
+ $(use_enable pic16 pic16-port)
+ $(use_enable hc08 hc08-port)
+ $(use_enable s08 s08-port)
+ $(use_enable stm8 stm8-port)
+ $(use_enable pdk13 pdk13-port)
+ $(use_enable pdk14 pdk14-port)
+ $(use_enable pdk15 pdk15-port)
+ $(use_enable pdk16 pdk16-port)
+ $(use_enable mos6502 mos6502-port)
+ $(use_enable mos65c02 mos65c02-port)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ default
+
+ # Sanity check, as gputils errors/segfaults don't cause make to stop
+ local libs=()
+ use pic14 && libs+=( device/lib/build/pic14/libsdcc.lib )
+ use pic16 && libs+=( device/lib/build/pic16/libsdcc.lib )
+ for lib in "${libs[@]}"; do
+ [[ -f "${lib}" ]] || die "Failed to build ${lib}"
+ done
}
src_install() {
default
dodoc doc/*.txt
- find "${D}" -name .deps -exec rm -rf {} + || die
+ find "${ED}" -type d -name .deps -exec rm -vr {} + || die
if use doc && [[ ${PV} != "9999" ]]; then
cd "${WORKDIR}"/doc
dodoc -r *
fi
-
- # a bunch of archives (*.a) are built & installed by gputils
- # for PIC processors, but they do not work with standard `ar`
- # & `scanelf` utils and they're not for the host.
- dostrip -x /usr/bin
}
diff --git a/dev-embedded/srecord/srecord-1.64-r1.ebuild b/dev-embedded/srecord/srecord-1.64-r1.ebuild
index aa4b0214e17d..452b66c8b96c 100644
--- a/dev-embedded/srecord/srecord-1.64-r1.ebuild
+++ b/dev-embedded/srecord/srecord-1.64-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -6,7 +6,7 @@ EAPI=7
inherit autotools
DESCRIPTION="A collection of powerful tools for manipulating EPROM load files"
-HOMEPAGE="http://srecord.sourceforge.net/"
+HOMEPAGE="https://srecord.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-3"
diff --git a/dev-embedded/stm32flash/Manifest b/dev-embedded/stm32flash/Manifest
index 5a1228bf3493..e4e097bf8308 100644
--- a/dev-embedded/stm32flash/Manifest
+++ b/dev-embedded/stm32flash/Manifest
@@ -1 +1,2 @@
DIST stm32flash-0.6.tar.gz 376186 BLAKE2B 82e479b4fad2c3ff832aea9d0d62d556500fd8c0530e879690b9b83cdf05f078b0051e1e104e7cb64b9c360ef84415904639ee67ee147045ce8e15ca3f6c61e1 SHA512 2d92ecf4f82b8a702b596cbf3c4ff594f67083f7dcec82c064555f73b47834b41a918efa1846e47fc8740ae63fa818b16dfb5b38fa242c17f465666a651eee3a
+DIST stm32flash-0.7.tar.gz 380166 BLAKE2B 98522968072821e3cf110e62486a3b9ee90ac6c7e600f6633acbfac904024390157743f0895cae181fc9b20f4f14dc5b833c36e02de4adbfc644c797abd12d63 SHA512 328254dd043dc707cf8c3edf8ddd4a9441c85d9cb2ca1682bcb3f5301d526b04ed6fb335e72a94e3d26341f18bef45968bf321f0ffeb80eaa0c3add6701349ff
diff --git a/dev-embedded/stm32flash/metadata.xml b/dev-embedded/stm32flash/metadata.xml
index 85e4ed814fa2..8748497326f9 100644
--- a/dev-embedded/stm32flash/metadata.xml
+++ b/dev-embedded/stm32flash/metadata.xml
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<!-- maintainer-needed -->
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="sourceforge">stm32flash</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-embedded/stm32flash/stm32flash-0.7.ebuild b/dev-embedded/stm32flash/stm32flash-0.7.ebuild
new file mode 100644
index 000000000000..3ecab4e33410
--- /dev/null
+++ b/dev-embedded/stm32flash/stm32flash-0.7.ebuild
@@ -0,0 +1,12 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+DESCRIPTION="Open source flash program for STM32 using the ST serial bootloader"
+HOMEPAGE="https://sourceforge.net/projects/stm32flash/"
+SRC_URI="mirror://sourceforge/project/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
diff --git a/dev-embedded/sunxi-tools/Manifest b/dev-embedded/sunxi-tools/Manifest
index db2220b9c0ad..a5a930f9841f 100644
--- a/dev-embedded/sunxi-tools/Manifest
+++ b/dev-embedded/sunxi-tools/Manifest
@@ -1,2 +1,4 @@
DIST sunxi-tools-1.3.tar.gz 52608 BLAKE2B e8c3ed7276f705273598e38a0cc469225de1ee4eb8177b78be63b78ebc584c4fdf2362e21b895f61b4c5e84df98bfd5ccf6d3965ffa9338c98027c9ce4635626 SHA512 954c95963013aee8a38b3583ba1b7ec7e7049c7e09c5fa9ec564dfc33f304d3669fdf68c2fa5e4b5a6265640a3d1ee8bc13bcd71d804c714884b6a780d193615
DIST sunxi-tools-1.4.1.tar.gz 78878 BLAKE2B f50b14e79d4880a076f8b25869eea44e34cfc50c91ce7f9e4adc831bb2ac2238c930623677bacb399e52faadba20c9ba21ea212915c50941af825d0579804153 SHA512 b66f5caaabec016a0d2f1ccc88ee7f37cd26a511ac81c270e2de6bf0b967e8dfda2b510d5306daffb33ec8855c3c6be99a29bfd1efd5bd0cf3431494b092a52b
+DIST sunxi-tools-1.4.2-test.zip 890565 BLAKE2B c24bafde5f049eca61962faf71d9928eb6340c48d619484f6dad1a6d7c1b9dc6f23d0f3f9b3e7847efd68004e70b44b9637d27bec8a97e6e3772b4003f3d25db SHA512 7763d60094f990e42bf57ae3e72f19dfb52cc6573777bf8c9a01bc5c1598505b067645f88b04955ae2b0f9456140e6bcb8eab31526e6e94fa28e826a80da7172
+DIST sunxi-tools-1.4.2.tar.gz 84090 BLAKE2B b3261855eb9a18025c19829e343e3e2e7097dc4e267a60fdcf39cd2e9bfa57580267a77846a576ea5fc04a07fd6ba90b1223a8c644c933879dc7aa766ba36210 SHA512 633bc1752ae11799ce0bae347b52296792d28265a2260e173727847e1f457b767e88d02ae547bb55a2bb05e1eb552ba4406985ae105a1712a9fa30852ae293e8
diff --git a/dev-embedded/sunxi-tools/sunxi-tools-1.4.2.ebuild b/dev-embedded/sunxi-tools/sunxi-tools-1.4.2.ebuild
new file mode 100644
index 000000000000..d7ce94b79fc2
--- /dev/null
+++ b/dev-embedded/sunxi-tools/sunxi-tools-1.4.2.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+inherit toolchain-funcs
+
+if [[ ${PV} = *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/linux-sunxi/sunxi-tools"
+ PROPERTIES="test_network"
+ RESTRICT="test"
+ RDEPEND="sys-apps/dtc
+ sys-libs/zlib"
+else
+ KEYWORDS="~amd64"
+ # We need this as zip, it is used during src_test
+ SRC_URI="https://github.com/linux-sunxi/sunxi-tools/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ test? ( https://github.com/linux-sunxi/sunxi-boards/archive/bc7410fed9e5d9b31cd1d6ae90462d06b513660e.zip \
+ -> ${P}-test.zip )"
+ RESTRICT="!test? ( test )"
+
+ PATCHES=(
+ "${FILESDIR}/${PN}-1.4.1-fix-strncpy-compiler-warning.patch"
+ )
+fi
+
+DESCRIPTION="A collection of command line tools for ARM devices with Allwinner SoCs"
+HOMEPAGE="https://linux-sunxi.org/Main_Page"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="test"
+
+RDEPEND+=" acct-group/plugdev
+ virtual/libusb:1
+ virtual/udev"
+
+DEPEND="${RDEPEND}
+"
+
+BDEPEND="virtual/pkgconfig
+ test? ( app-arch/unzip )"
+
+src_unpack() {
+ if [[ ${PV} = *9999* ]]; then
+ git-r3_src_unpack
+ else
+ unpack ${P}.tar.gz
+ # No need to unpack testdata twice
+ fi
+}
+
+src_prepare() {
+ default
+
+ if [[ ${PV} != *9999* ]] && use test; then
+ cp "${DISTDIR}/${P}-test.zip" "${S}/tests/sunxi-boards.zip" || die
+ sed -i 's$sunxi-boards-master$sunxi-boards-bc7410fed9e5d9b31cd1d6ae90462d06b513660e$' tests/Makefile || die
+ sed -i 's|^coverage:.*|coverage: $(BOARDS_DIR)/README|' tests/Makefile || die
+ fi
+}
+
+src_compile() {
+ tc-export PKG_CONFIG
+
+ emake LIBUSB_CFLAGS="$(${PKG_CONFIG} --cflags libusb-1.0)" \
+ LIBUSB_LIBS="$(${PKG_CONFIG} --libs libusb-1.0)" \
+ CC="$(tc-getCC)" tools misc
+}
+
+src_install() {
+ dobin bin2fex fex2bin phoenix_info sunxi-nand-image-builder
+ newbin sunxi-bootinfo bootinfo
+ newbin sunxi-fel fel
+ newbin sunxi-fexc fexc
+ newbin sunxi-nand-part nand-part
+}
diff --git a/dev-embedded/sunxi-tools/sunxi-tools-9999.ebuild b/dev-embedded/sunxi-tools/sunxi-tools-9999.ebuild
new file mode 100644
index 000000000000..d7ce94b79fc2
--- /dev/null
+++ b/dev-embedded/sunxi-tools/sunxi-tools-9999.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+inherit toolchain-funcs
+
+if [[ ${PV} = *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/linux-sunxi/sunxi-tools"
+ PROPERTIES="test_network"
+ RESTRICT="test"
+ RDEPEND="sys-apps/dtc
+ sys-libs/zlib"
+else
+ KEYWORDS="~amd64"
+ # We need this as zip, it is used during src_test
+ SRC_URI="https://github.com/linux-sunxi/sunxi-tools/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ test? ( https://github.com/linux-sunxi/sunxi-boards/archive/bc7410fed9e5d9b31cd1d6ae90462d06b513660e.zip \
+ -> ${P}-test.zip )"
+ RESTRICT="!test? ( test )"
+
+ PATCHES=(
+ "${FILESDIR}/${PN}-1.4.1-fix-strncpy-compiler-warning.patch"
+ )
+fi
+
+DESCRIPTION="A collection of command line tools for ARM devices with Allwinner SoCs"
+HOMEPAGE="https://linux-sunxi.org/Main_Page"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="test"
+
+RDEPEND+=" acct-group/plugdev
+ virtual/libusb:1
+ virtual/udev"
+
+DEPEND="${RDEPEND}
+"
+
+BDEPEND="virtual/pkgconfig
+ test? ( app-arch/unzip )"
+
+src_unpack() {
+ if [[ ${PV} = *9999* ]]; then
+ git-r3_src_unpack
+ else
+ unpack ${P}.tar.gz
+ # No need to unpack testdata twice
+ fi
+}
+
+src_prepare() {
+ default
+
+ if [[ ${PV} != *9999* ]] && use test; then
+ cp "${DISTDIR}/${P}-test.zip" "${S}/tests/sunxi-boards.zip" || die
+ sed -i 's$sunxi-boards-master$sunxi-boards-bc7410fed9e5d9b31cd1d6ae90462d06b513660e$' tests/Makefile || die
+ sed -i 's|^coverage:.*|coverage: $(BOARDS_DIR)/README|' tests/Makefile || die
+ fi
+}
+
+src_compile() {
+ tc-export PKG_CONFIG
+
+ emake LIBUSB_CFLAGS="$(${PKG_CONFIG} --cflags libusb-1.0)" \
+ LIBUSB_LIBS="$(${PKG_CONFIG} --libs libusb-1.0)" \
+ CC="$(tc-getCC)" tools misc
+}
+
+src_install() {
+ dobin bin2fex fex2bin phoenix_info sunxi-nand-image-builder
+ newbin sunxi-bootinfo bootinfo
+ newbin sunxi-fel fel
+ newbin sunxi-fexc fexc
+ newbin sunxi-nand-part nand-part
+}
diff --git a/dev-embedded/u-boot-tools/Manifest b/dev-embedded/u-boot-tools/Manifest
index b73e288f4f19..710591603f22 100644
--- a/dev-embedded/u-boot-tools/Manifest
+++ b/dev-embedded/u-boot-tools/Manifest
@@ -1,2 +1,3 @@
-DIST u-boot-2022.07.tar.bz2 18087759 BLAKE2B bb78c7ccd56f12ebc622fb73d29cbf0a5db9d421133b191a6591845b4842b111145d2df649bae69011284bd468b8219ee0df20b61660ea4ec52006a93e14f09d SHA512 e1b3621dafac876c644ffb3d24b6e2380f5a78454c420a5b17d174e3f0b57731a95cfbff28ae7d0af4493f4bbf8d21e7f9236d61bb2414ed12295332b3d557b6
-DIST u-boot-2022.10.tar.bz2 18365430 BLAKE2B 42aa7a6f131735888939982e579de4342e3909e064ab896b0df6f1ff56c20ed6cb11d25286da7c052a5f67dcef6fa7a746944d8df6dd504586f5a71502d157e1 SHA512 95bc1f915a3349f6045e59f46d8514485ca0de1d62303f7026b8e59f3ac539b9545895e0dd736ed7b26f28239db31672ecad2accc3fd99356a55269697039147
+DIST u-boot-2023.10.tar.bz2 19645392 BLAKE2B 1404ab42e8b0c821fbfdf612cc00ed5d6b1a1d15d4e69647e788cf97536234f89fe000f480107f8a78b56f7dae7a022f5e742c06ca7f381050e2251889fcdb83 SHA512 f238a69b9cc08ee0a69ea8ca2fa26975f2f2ede14e978b4db274b1e4095e43af0052307ac39034658a72ec9706951cd03c0f316d0591f391adecaf2cc9496fc4
+DIST u-boot-2024.01.tar.bz2 19926911 BLAKE2B c62a22f56276426917b0db508ad7dc82efa4fe7be14c5e7d79ecdea172b2b383981b7e65b7e920b196d0162a17fb362ef97a8d758a1b30e509e3c66748d2c106 SHA512 45bd093ba3bda23e43cdde83d8656c1ee1348ac2886ecff1fee475f101ac4965a5be6565408fa5b990c723f3fdc833edfca60a719f735a43040cd14a1b59a88b
+DIST u-boot-tools-2024.01-fix-invalid-escape-sequence.patch 1285 BLAKE2B ad0af975b59794f21a44472a1f1b4542e75e478d51e649a6c339a4af9963cb4b822e6eba6819cbd3d35c09f3c33f1995288ef296e07466a427cf1f0dd0a399e1 SHA512 8675c267ca5a234924bdf8fc03dcaf75501cf86ac7a9b2e7fbc7982b9620e8863af289c124c5e91cccee58cc116b4d2798be745dedc1b28099a143f3464ad4d6
diff --git a/dev-embedded/u-boot-tools/files/disable-unused-mkeficapsule.patch b/dev-embedded/u-boot-tools/files/disable-unused-mkeficapsule.patch
new file mode 100644
index 000000000000..90c8ce3f0a4d
--- /dev/null
+++ b/dev-embedded/u-boot-tools/files/disable-unused-mkeficapsule.patch
@@ -0,0 +1,14 @@
+Disable unused mkeficapsule
+
+`CONFIG_TOOLS_MKEFICAPSULE` requires gnutls to build. Since we don't actually
+expose the tool, we can just disable it.
+
+diff -ur a/configs/tools-only_defconfig b/configs/tools-only_defconfig
+--- a/configs/tools-only_defconfig 2023-01-09 09:07:33.000000000 -0700
++++ b/configs/tools-only_defconfig 2023-08-11 14:01:50.151294889 -0600
+@@ -33,4 +33,4 @@
+ # CONFIG_VIRTIO_SANDBOX is not set
+ # CONFIG_GENERATE_ACPI_TABLE is not set
+ # CONFIG_EFI_LOADER is not set
+-CONFIG_TOOLS_MKEFICAPSULE=y
++# CONFIG_TOOLS_MKEFICAPSULE is not set
diff --git a/dev-embedded/u-boot-tools/files/disable-unused-pylibfdt.patch b/dev-embedded/u-boot-tools/files/disable-unused-pylibfdt.patch
new file mode 100644
index 000000000000..8686341a8776
--- /dev/null
+++ b/dev-embedded/u-boot-tools/files/disable-unused-pylibfdt.patch
@@ -0,0 +1,17 @@
+Disable unused pylibfdt
+
+The `imply BINMAN` causes `pylibfdt` to be built, which requires python. We
+don't currently expose `pylibfdt`, or declare python dependencies, so disable
+it.
+
+diff -ur a/arch/Kconfig b/arch/Kconfig
+--- a/arch/Kconfig 2023-01-09 09:07:33.000000000 -0700
++++ b/arch/Kconfig 2023-08-11 14:01:05.998403114 -0600
+@@ -205,7 +205,6 @@
+ imply KEYBOARD
+ imply PHYSMEM
+ imply GENERATE_ACPI_TABLE
+- imply BINMAN
+
+ config SH
+ bool "SuperH architecture"
diff --git a/dev-embedded/u-boot-tools/metadata.xml b/dev-embedded/u-boot-tools/metadata.xml
index 6f86a7d89ece..3f0bca1137e1 100644
--- a/dev-embedded/u-boot-tools/metadata.xml
+++ b/dev-embedded/u-boot-tools/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>jsmolic@gentoo.org</email>
- <name>Jakov Smolić</name>
- </maintainer>
<maintainer type="project">
<email>embedded@gentoo.org</email>
<name>Embedded Gentoo</name>
diff --git a/dev-embedded/u-boot-tools/u-boot-tools-2022.07.ebuild b/dev-embedded/u-boot-tools/u-boot-tools-2023.10-r1.ebuild
index 4b8ceb9f6cd6..05e693d9e34a 100644
--- a/dev-embedded/u-boot-tools/u-boot-tools-2022.07.ebuild
+++ b/dev-embedded/u-boot-tools/u-boot-tools-2023.10-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -13,18 +13,23 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ~ppc64 ~riscv x86"
+KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv x86"
IUSE="envtools"
RDEPEND="dev-libs/openssl:="
DEPEND="${RDEPEND}"
BDEPEND="
- dev-lang/swig
- sys-devel/bison
- sys-devel/flex
+ app-alternatives/yacc
+ app-alternatives/lex
+ sys-apps/which
virtual/pkgconfig
"
+PATCHES=(
+ "${FILESDIR}/disable-unused-mkeficapsule.patch"
+ "${FILESDIR}/disable-unused-pylibfdt.patch"
+)
+
src_prepare() {
default
sed -i 's:\bpkg-config\b:${PKG_CONFIG}:g' \
@@ -67,7 +72,7 @@ src_install() {
cd tools || die
if ! use envtools; then
- dobin bmp_logo dumpimage fdtgrep gen_eth_addr img2srec mkenvimage mkimage
+ dobin dumpimage fdtgrep gen_eth_addr img2srec mkenvimage mkimage
fi
dobin env/fw_printenv
diff --git a/dev-embedded/u-boot-tools/u-boot-tools-2022.10.ebuild b/dev-embedded/u-boot-tools/u-boot-tools-2024.01.ebuild
index 87f4e46b9f07..8930c2758c2b 100644
--- a/dev-embedded/u-boot-tools/u-boot-tools-2022.10.ebuild
+++ b/dev-embedded/u-boot-tools/u-boot-tools-2024.01.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -8,7 +8,11 @@ inherit toolchain-funcs
MY_P="u-boot-${PV/_/-}"
DESCRIPTION="utilities for working with Das U-Boot"
HOMEPAGE="https://www.denx.de/wiki/U-Boot/WebHome"
-SRC_URI="https://ftp.denx.de/pub/u-boot/${MY_P}.tar.bz2"
+SRC_URI="
+ https://ftp.denx.de/pub/u-boot/${MY_P}.tar.bz2
+ https://github.com/u-boot/u-boot/commit/88b9b9c44c859bdd9bb227e2fdbc4cbf686c3343.patch
+ -> u-boot-tools-2024.01-fix-invalid-escape-sequence.patch
+"
S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
@@ -20,11 +24,16 @@ RDEPEND="dev-libs/openssl:="
DEPEND="${RDEPEND}"
BDEPEND="
dev-lang/swig
- sys-devel/bison
- sys-devel/flex
+ app-alternatives/yacc
+ app-alternatives/lex
virtual/pkgconfig
"
+PATCHES=(
+ # https://github.com/u-boot/u-boot/pull/489
+ "${DISTDIR}"/u-boot-tools-2024.01-fix-invalid-escape-sequence.patch
+)
+
src_prepare() {
default
sed -i 's:\bpkg-config\b:${PKG_CONFIG}:g' \
@@ -67,7 +76,7 @@ src_install() {
cd tools || die
if ! use envtools; then
- dobin bmp_logo dumpimage fdtgrep gen_eth_addr img2srec mkenvimage mkimage
+ dobin dumpimage fdtgrep gen_eth_addr img2srec mkenvimage mkimage
fi
dobin env/fw_printenv
diff --git a/dev-embedded/urjtag/Manifest b/dev-embedded/urjtag/Manifest
index a7184daab17c..6799f1ccf0d8 100644
--- a/dev-embedded/urjtag/Manifest
+++ b/dev-embedded/urjtag/Manifest
@@ -1 +1 @@
-DIST urjtag-2019.12.tar.xz 1208432 BLAKE2B 69963cbd39dcbec1abd73778fc6e98d743e36f6d4a17ba673b8691598ac0d4cec97e8b9c79068ad8971e6e07de81553bfd3bf5f684515b4a19303dd95ed477a2 SHA512 e149e53410a6591bdadc2c0138c6f81dac0fd6e35601461e19d356decdb820ec8e6bd53d59a1fd9781dfa1fee88d23dcafbd8df9adc0f8e51256c626d2ee0f36
+DIST urjtag-2021.03.tar.xz 1208440 BLAKE2B 68d0f0ec15c25ef351e0523eea21c18e723871032a046d31c031809a2774b0b8339b0b5d1a6f11a681ab3d3074b7f5f4fcd819fa7de1fdcac5f20ab39c6a40dd SHA512 baf203e556d1d41437539d3f5c018b35fbb496f71391c2bec2786ffa47bff33d38654b3e7d106e38bcf36d075d86fc02b18eaaf634cdb65e2840ff50ca0da8b2
diff --git a/dev-embedded/urjtag/files/urjtag-2021.03-fix-python-setup.patch b/dev-embedded/urjtag/files/urjtag-2021.03-fix-python-setup.patch
new file mode 100644
index 000000000000..c6206fefee2e
--- /dev/null
+++ b/dev-embedded/urjtag/files/urjtag-2021.03-fix-python-setup.patch
@@ -0,0 +1,14 @@
+Subject: [PATCH] python: replace distutils with setuptools
+
+distutils is deprecated for sometime and it was removed in python 3.12.
+
+--- a/bindings/python/setup.py.in 2018-03-24 20:27:41.000000000 +0800
++++ b/bindings/python/setup.py.in 2023-08-06 10:31:12.932358441 +0800
+@@ -1,6 +1,6 @@
+ # python extension setup script for urjtag
+
+-from distutils.core import setup, Extension
++from setuptools import setup, Extension
+
+ libraries = ['urjtag']
+ libraries.extend( w.replace('-l', '') for w in "@LIBFTDI_LIBS@ @FTD2XXLIB@ @LIBUSB_LIBS@ @LIBINTL@".split() if w.replace('-l', '') not in libraries )
diff --git a/dev-embedded/urjtag/urjtag-2019.12.ebuild b/dev-embedded/urjtag/urjtag-2021.03.ebuild
index 378f3e6e7e28..722255ff17da 100644
--- a/dev-embedded/urjtag/urjtag-2019.12.ebuild
+++ b/dev-embedded/urjtag/urjtag-2021.03.ebuild
@@ -1,7 +1,11 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit python-r1
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="git://git.code.sf.net/p/urjtag/git"
@@ -13,19 +17,27 @@ else
fi
DESCRIPTION="Tool for communicating over JTAG with flash chips, CPUs, and many more"
-HOMEPAGE="http://urjtag.sourceforge.net/"
+HOMEPAGE="https://urjtag.sourceforge.net/"
LICENSE="GPL-2"
SLOT="0"
-# TODO: Figure out if anyone wants the Python bindings
-IUSE="ftdi ftd2xx readline usb"
-DEPEND="ftdi? ( dev-embedded/libftdi:1= )
+IUSE="ftdi ftd2xx python readline usb"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="ftdi? ( dev-embedded/libftdi:1 )
ftd2xx? ( dev-embedded/libftd2xx )
+ python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:= )
usb? ( virtual/libusb:1 )"
-RDEPEND="${DEPEND}
- !dev-embedded/jtag"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ python? ( dev-python/setuptools[${PYTHON_USEDEP}] )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2021.03-fix-python-setup.patch"
+)
src_prepare() {
default
@@ -41,14 +53,32 @@ src_configure() {
econf \
--disable-werror \
--disable-python \
- --disable-static \
$(use_with readline) \
$(use_with ftdi libftdi) \
$(use_with ftd2xx) \
$(use_with usb libusb 1.0)
}
+src_compile() {
+ use python && python_copy_sources
+
+ emake
+}
+
src_install() {
default
+
+ if use python; then
+ installation() {
+ cd bindings/python || die
+ ln -s "${S}"/src/.libs ../../src/.libs || die
+ "${EPYTHON}" setup.py install \
+ --root="${D}" \
+ --prefix="${EPREFIX}/usr" || die
+ }
+ python_foreach_impl run_in_build_dir installation
+ python_foreach_impl python_optimize
+ fi
+
find "${ED}" -name '*.la' -delete || die
}
diff --git a/dev-embedded/urjtag/urjtag-9999.ebuild b/dev-embedded/urjtag/urjtag-9999.ebuild
index 54e0951ff6ce..031c9e8c7232 100644
--- a/dev-embedded/urjtag/urjtag-9999.ebuild
+++ b/dev-embedded/urjtag/urjtag-9999.ebuild
@@ -1,7 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit python-r1
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="git://git.code.sf.net/p/urjtag/git"
@@ -13,18 +17,27 @@ else
fi
DESCRIPTION="Tool for communicating over JTAG with flash chips, CPUs, and many more"
-HOMEPAGE="http://urjtag.sourceforge.net/"
+HOMEPAGE="https://urjtag.sourceforge.net/"
LICENSE="GPL-2"
SLOT="0"
-# TODO: Figure out if anyone wants the Python bindings
-IUSE="ftdi readline usb"
+
+IUSE="ftdi ftd2xx python readline usb"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
DEPEND="ftdi? ( dev-embedded/libftdi:1 )
+ ftd2xx? ( dev-embedded/libftd2xx )
+ python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:= )
usb? ( virtual/libusb:1 )"
-RDEPEND="${DEPEND}
- !dev-embedded/jtag"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ python? ( dev-python/setuptools[${PYTHON_USEDEP}] )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2021.03-fix-python-setup.patch"
+)
src_prepare() {
default
@@ -37,16 +50,35 @@ src_prepare() {
}
src_configure() {
- use readline || export vl_cv_lib_readline=no
-
econf \
--disable-werror \
--disable-python \
+ $(use_with readline) \
$(use_with ftdi libftdi) \
- $(use_with usb libusb)
+ $(use_with ftd2xx) \
+ $(use_with usb libusb 1.0)
+}
+
+src_compile() {
+ use python && python_copy_sources
+
+ emake
}
src_install() {
default
+
+ if use python; then
+ installation() {
+ cd bindings/python || die
+ ln -s "${S}"/src/.libs ../../src/.libs || die
+ "${EPYTHON}" setup.py install \
+ --root="${D}" \
+ --prefix="${EPREFIX}/usr" || die
+ }
+ python_foreach_impl run_in_build_dir installation
+ python_foreach_impl python_optimize
+ fi
+
find "${ED}" -name '*.la' -delete || die
}
diff --git a/dev-embedded/usbprog/Manifest b/dev-embedded/usbprog/Manifest
index 69e232c5dcb4..a414fc739e61 100644
--- a/dev-embedded/usbprog/Manifest
+++ b/dev-embedded/usbprog/Manifest
@@ -1 +1 @@
-DIST usbprog-0.3.0_p20140828.tar.bz2 4211124 BLAKE2B b0b1341e34f6f8c5b59925d115be0c45ce12d69d57a330fd111ce41a8f584f68548485f713ee6386e01facd4b7bf7c86e397194c4202ceda226bf912d94ab079 SHA512 fbc4e4edda36c5633f8459723d147bc02a211ef35d409b9a412ce901f3be1ac59f8183caf2a4f93cbe51b9807f7012986e12274167102fb5d84246f23712cca2
+DIST usbprog-0.3.0_p20140828.tar.gz 4216305 BLAKE2B 65ea08a9f937f70842af5d4bcb0a3256f539bdba36854a51c25458e8b32aa12ea80342f4cb597148f78a50d440d3af91e67e39ca60e54340bbf75fa679cf52e0 SHA512 31d9d551452305dc495caf0e44823c929d7bd25a9a2dec0fec8e1efaa70736dc45cf45607cf7a655aa4201854bcb19d6e6266ba901d6a51eec7d6b5cbfb5a2db
diff --git a/dev-embedded/usbprog/metadata.xml b/dev-embedded/usbprog/metadata.xml
index a98bf499324d..98fa0b02b3a9 100644
--- a/dev-embedded/usbprog/metadata.xml
+++ b/dev-embedded/usbprog/metadata.xml
@@ -6,6 +6,6 @@
<name>Embedded Gentoo</name>
</maintainer>
<upstream>
- <remote-id type="bitbucket">bwalle/usbprog-tools</remote-id>
+ <remote-id type="github">bwalle/usbprog-tools</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-embedded/usbprog/usbprog-0.3.0_p20140828-r1.ebuild b/dev-embedded/usbprog/usbprog-0.3.0_p20140828-r2.ebuild
index 93073fc987fa..a262a146260c 100644
--- a/dev-embedded/usbprog/usbprog-0.3.0_p20140828-r1.ebuild
+++ b/dev-embedded/usbprog/usbprog-0.3.0_p20140828-r2.ebuild
@@ -1,15 +1,15 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit cmake readme.gentoo-r1
-REV="293d559bac55"
+REV="293d559bac55f7c7130ea2769c703c68a19d62c2"
DESCRIPTION="flashtool for the multi purpose programming adapter usbprog"
-HOMEPAGE="http://www.aaabbb.de/FirmwareUsbprog/FirmwareUsbprog_en.php https://bitbucket.org/bwalle/usbprog-tools/src/master/"
-SRC_URI="https://bitbucket.org/bwalle/usbprog-tools/get/${REV}.tar.bz2 -> ${P}.tar.bz2"
+HOMEPAGE="https://github.com/bwalle/usbprog-tools https://www.aaabbb.de/FirmwareUsbprog/FirmwareUsbprog_en.php"
+SRC_URI="https://github.com/bwalle/usbprog-tools/archive/${REV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
@@ -28,7 +28,7 @@ RDEPEND="
virtual/libusb:1
"
DEPEND="${RDEPEND}"
-S="${WORKDIR}/bwalle-usbprog-tools-${REV}"
+S="${WORKDIR}/usbprog-tools-${REV}"
PATCHES=(
"${FILESDIR}/${P}_versions.xml.patch"
diff --git a/dev-embedded/xa/Manifest b/dev-embedded/xa/Manifest
index 1b87076fc499..e9fd114f1bad 100644
--- a/dev-embedded/xa/Manifest
+++ b/dev-embedded/xa/Manifest
@@ -1 +1 @@
-DIST xa-2.3.13.tar.gz 155606 BLAKE2B 8196f8f88bee29dbab9ad026c0d4e3519159c4ed7579dc7db391c0bdd7b1bfe31e2884644258d863e299ac3b5fcc43718b3d95b9b7d7802541a9d58366728ffe SHA512 b8a4c1856e51bbe212b98be06895987d6fb926a229511a67ea90a934da1fcc84daf29bd289c3c4c2254d2bce345333bb92747947f3286376761613b2e181e99b
+DIST xa-2.4.0.tar.gz 197862 BLAKE2B 27f8b41dafee9c1c4158681d57f971297a0a63e09df164469f665528cffae0cdd78441c0a939d742463e851f32a73ee30a95f2b2b41e2fe42137041a03041255 SHA512 eebaf67715324735203405016df7311bf2ed568ab0e609c0fec7d9d803c173cde5dea161b7f713cb5215454d1ce69acbde43372016dfe9866ed99acecb9aafb1
diff --git a/dev-embedded/xa/files/xa-2.3.10-Makefile.patch b/dev-embedded/xa/files/xa-2.3.10-Makefile.patch
deleted file mode 100644
index cabc7b99beec..000000000000
--- a/dev-embedded/xa/files/xa-2.3.10-Makefile.patch
+++ /dev/null
@@ -1,77 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -1,11 +1,7 @@
- # Unix gcc or DOS go32 cross-compiling gcc
- #
--CC = gcc
--LD = gcc
- # for testing. not to be used; build failures in misc/.
- #CFLAGS = -O2 -W -Wall -pedantic -ansi
--CFLAGS = -O2
--LDFLAGS = -lc
-
- # for DOS?
- # CC = gcc-go32
-@@ -32,13 +28,13 @@
- rm -f xa
-
- xa:
-- (cd src && LD=${LD} CC="${CC} ${CFLAGS}" ${MAKE})
-+ (cd src && ${MAKE})
-
- load:
-- (cd loader && CC="${CC} ${CFLAGS}" ${MAKE})
-+ (cd loader && ${MAKE})
-
- uncpk:
-- (cd misc && CC="${CC} ${CFLAGS}" ${MAKE})
-+ (cd misc && ${MAKE})
-
- dos: clean
- (cd src && LD=gcc-go32 CC=gcc-go32 CFLAGS="-W -Wall -pedantic" ${MAKE})
---- a/misc/Makefile
-+++ b/misc/Makefile
-@@ -2,7 +2,6 @@
- XCBMLIB = ..
-
- # -Wall -ansi et al. cause compile problems.
--CFLAGS = -O2
-
- LIBS = #-lncurses -ltermcap -lm
-
-@@ -10,19 +9,19 @@
- all: ../mkrom.sh ../uncpk ../printcbm ../file65 ../reloc65 ../ldo65
-
- ../uncpk: uncpk.c
-- ${CC} ${CFLAGS} uncpk.c -o $(XCBMLIB)/uncpk
-+ ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} uncpk.c -o $(XCBMLIB)/uncpk
-
- ../printcbm: printcbm.c
-- ${CC} ${CFLAGS} printcbm.c -o $(XCBMLIB)/printcbm
-+ ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} printcbm.c -o $(XCBMLIB)/printcbm
-
- ../file65: file65.c
-- ${CC} ${CFLAGS} file65.c -o $(XCBMLIB)/file65
-+ ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} file65.c -o $(XCBMLIB)/file65
-
- ../ldo65: ldo65.c
-- ${CC} ${CFLAGS} ldo65.c -o $(XCBMLIB)/ldo65
-+ ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} ldo65.c -o $(XCBMLIB)/ldo65
-
- ../reloc65: reloc65.c
-- ${CC} ${CFLAGS} reloc65.c -o $(XCBMLIB)/reloc65
-+ ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} reloc65.c -o $(XCBMLIB)/reloc65
-
- ../mkrom.sh: mkrom.sh
- cp mkrom.sh ../mkrom.sh
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -8,7 +8,7 @@
- all: xa
-
- xa: ${OBJ}
-- ${LD} -o ../xa ${OBJ} ${LDFLAGS}
-+ ${CC} ${CFLAGS} ${LDFLAGS} -o ../xa ${OBJ}
-
- clean:
- rm -f *.o *.o65
diff --git a/dev-embedded/xa/files/xa-2.4.0-make.patch b/dev-embedded/xa/files/xa-2.4.0-make.patch
new file mode 100644
index 000000000000..a71ceef23bd7
--- /dev/null
+++ b/dev-embedded/xa/files/xa-2.4.0-make.patch
@@ -0,0 +1,28 @@
+https://bugs.gentoo.org/722600
+--- a/Makefile
++++ b/Makefile
+@@ -4,2 +3,0 @@
+-CC = gcc
+-LD = gcc
+@@ -9,2 +6,0 @@
+-CFLAGS = -O2
+-LDFLAGS = -lc
+@@ -33 +29 @@
+-all: killxa xa uncpk
++all: xa uncpk
+@@ -39 +35 @@
+- (cd src && LD=${LD} CC="${CC} ${CFLAGS}" ${MAKE})
++ (cd src && ${MAKE})
+@@ -45 +41 @@
+- (cd misc && CC="${CC} ${CFLAGS}" ${MAKE})
++ (cd misc && ${MAKE})
+--- a/misc/Makefile
++++ b/misc/Makefile
+@@ -5 +5 @@
+-CFLAGS = -O2 -g
++CFLAGS := $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -12 +12 @@
+- ${LD} -o ../xa ${OBJ} ${LDFLAGS}
++ ${CC} ${LDFLAGS} -o ../xa ${OBJ}
diff --git a/dev-embedded/xa/xa-2.3.13.ebuild b/dev-embedded/xa/xa-2.4.0.ebuild
index ddaef3e9cb4a..df008580717d 100644
--- a/dev-embedded/xa/xa-2.3.13.ebuild
+++ b/dev-embedded/xa/xa-2.4.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -14,7 +14,7 @@ SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 x86"
PATCHES=(
- "${FILESDIR}"/${PN}-2.3.10-Makefile.patch
+ "${FILESDIR}"/${PN}-2.4.0-make.patch
)
src_configure() {