mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-14 16:37:01 +02:00
Merge pull request #1446 from flatcar/krnowak/sys-automation
Put sys-* packages under automation
This commit is contained in:
commit
4af4b45e91
11
.github/workflows/portage-stable-packages-list
vendored
11
.github/workflows/portage-stable-packages-list
vendored
@ -126,6 +126,7 @@ app-text/build-docbook-catalog
|
||||
app-text/docbook-xml-dtd
|
||||
app-text/docbook-xsl-ns-stylesheets
|
||||
app-text/docbook-xsl-stylesheets
|
||||
app-text/mandoc
|
||||
app-text/manpager
|
||||
app-text/sgml-common
|
||||
|
||||
@ -455,6 +456,9 @@ sys-block/open-isns
|
||||
sys-block/parted
|
||||
sys-block/thin-provisioning-tools
|
||||
|
||||
sys-boot/efibootmgr
|
||||
sys-boot/gnu-efi
|
||||
|
||||
sys-devel/autoconf
|
||||
sys-devel/autoconf-archive
|
||||
sys-devel/autoconf-wrapper
|
||||
@ -490,11 +494,14 @@ sys-fs/lsscsi
|
||||
sys-fs/mtools
|
||||
sys-fs/multipath-tools
|
||||
sys-fs/quota
|
||||
sys-fs/squashfs-tools
|
||||
sys-fs/xfsprogs
|
||||
|
||||
sys-kernel/installkernel-gentoo
|
||||
sys-kernel/linux-headers
|
||||
|
||||
sys-libs/binutils-libs
|
||||
sys-libs/efivar
|
||||
sys-libs/gdbm
|
||||
sys-libs/ldb
|
||||
sys-libs/libcap
|
||||
@ -503,6 +510,8 @@ sys-libs/libnvme
|
||||
sys-libs/libseccomp
|
||||
sys-libs/libselinux
|
||||
sys-libs/libsepol
|
||||
sys-libs/libunwind
|
||||
sys-libs/liburing
|
||||
sys-libs/ncurses
|
||||
sys-libs/readline
|
||||
sys-libs/talloc
|
||||
@ -510,6 +519,8 @@ sys-libs/tdb
|
||||
sys-libs/tevent
|
||||
sys-libs/zlib
|
||||
|
||||
sys-power/acpid
|
||||
|
||||
sys-process/lsof
|
||||
sys-process/procps
|
||||
sys-process/psmisc
|
||||
|
7
changelog/updates/2023-11-23-sys-automation.md
Normal file
7
changelog/updates/2023-11-23-sys-automation.md
Normal file
@ -0,0 +1,7 @@
|
||||
- acpid ([2.0.34](https://sourceforge.net/p/acpid2/code/ci/2.0.34/tree/Changelog))
|
||||
- efibootmgr ([18](https://github.com/rhboot/efibootmgr/releases/tag/18))
|
||||
- efivar ([38](https://github.com/rhboot/efivar/releases/tag/38))
|
||||
- ipvsadm ([1.31](https://git.kernel.org/pub/scm/utils/kernel/ipvsadm/ipvsadm.git/tag/?h=v1.31) (includes [1.28](https://git.kernel.org/pub/scm/utils/kernel/ipvsadm/ipvsadm.git/tag/?h=v1.28), [1.29](https://git.kernel.org/pub/scm/utils/kernel/ipvsadm/ipvsadm.git/tag/?h=v1.29) and [1.30](https://git.kernel.org/pub/scm/utils/kernel/ipvsadm/ipvsadm.git/tag/?h=v1.30)))
|
||||
- libunwind ([1.7.2](https://github.com/libunwind/libunwind/releases/tag/v1.7.2) (includes [1.7.0](https://github.com/libunwind/libunwind/releases/tag/v1.7.0)))
|
||||
- liburing ([2.3](https://github.com/axboe/liburing/blob/liburing-2.3/CHANGELOG))
|
||||
- squashfs-tools ([4.6.1](https://github.com/plougher/squashfs-tools/releases/tag/4.6.1) (includes [4.6](https://github.com/plougher/squashfs-tools/releases/tag/4.6)))
|
@ -25,6 +25,7 @@ DEPEND="
|
||||
app-eselect/eselect-python
|
||||
app-misc/jq
|
||||
app-shells/bash-completion
|
||||
app-text/mandoc
|
||||
coreos-base/hard-host-depends
|
||||
coreos-base/coreos-sb-keys
|
||||
coreos-devel/fero-client
|
||||
|
@ -1,4 +0,0 @@
|
||||
# The package does not understand cross-compiling.
|
||||
export PKG_CONFIG_LIBDIR="${ROOT}usr/lib/pkgconfig:${ROOT}usr/lib64/pkgconfig"
|
||||
export PKG_CONFIG_PATH="${PKG_CONFIG_LIBDIR}:${ROOT}usr/share/pkgconfig"
|
||||
export PKG_CONFIG_SYSROOT_DIR="${ROOT}"
|
@ -0,0 +1,37 @@
|
||||
From ca48d3964d26f5e3b38d73655f19b1836b16bd2d Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex@linutronix.de>
|
||||
Date: Tue, 18 Jan 2022 11:53:41 +0100
|
||||
Subject: [PATCH] src/Makefile: build util.c separately for makeguids
|
||||
|
||||
util.c needs to be built twice when cross-compiling:
|
||||
for the build machine to be able to link with
|
||||
makeguids which then runs during the same build,
|
||||
and then for the actual target.
|
||||
|
||||
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
|
||||
---
|
||||
src/Makefile | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index 0e423c4..a86abdc 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -27,10 +27,13 @@ EFIVAR_OBJECTS = $(patsubst %.S,%.o,$(pa
|
||||
EFISECDB_SOURCES = efisecdb.c guid-symbols.c secdb-dump.c util.c
|
||||
EFISECDB_OBJECTS = $(patsubst %.S,%.o,$(patsubst %.c,%.o,$(EFISECDB_SOURCES)))
|
||||
GENERATED_SOURCES = include/efivar/efivar-guids.h guid-symbols.c
|
||||
-MAKEGUIDS_SOURCES = makeguids.c util.c
|
||||
+MAKEGUIDS_SOURCES = makeguids.c util-makeguids.c
|
||||
MAKEGUIDS_OBJECTS = $(patsubst %.S,%.o,$(patsubst %.c,%.o,$(MAKEGUIDS_SOURCES)))
|
||||
MAKEGUIDS_OUTPUT = $(GENERATED_SOURCES)
|
||||
|
||||
+util-makeguids.c : util.c
|
||||
+ cp util.c util-makeguids.c
|
||||
+
|
||||
ALL_SOURCES=$(LIBEFISEC_SOURCES) $(LIBEFIBOOT_SOURCES) $(LIBEFIVAR_SOURCES) \
|
||||
$(MAKEGUIDS_SOURCES) $(GENERATED_SOURCES) $(EFIVAR_SOURCES) \
|
||||
$(sort $(wildcard include/efivar/*.h))
|
||||
--
|
||||
2.34.1
|
||||
|
4
sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-libs/efivar/README.md
vendored
Normal file
4
sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sys-libs/efivar/README.md
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
The `0001-src-Makefile-build-util.c-separately-for-makeguids.patch`
|
||||
patch fixes a cross-compilation issue. We will ask Gentoo to include
|
||||
this patch too in their ebuild. Currently there is no release of
|
||||
efivar that has this patch.
|
@ -82,8 +82,8 @@
|
||||
=sys-apps/smartmontools-7.4 ~arm64
|
||||
=sys-block/thin-provisioning-tools-1.0.6 ~amd64
|
||||
|
||||
# Needed to force enable ipvsadm for arm64.
|
||||
=sys-cluster/ipvsadm-1.27-r1 **
|
||||
# Enable ipvsadm for arm64.
|
||||
=sys-cluster/ipvsadm-1.31-r1 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=sys-firmware/edk2-aarch64-18.02 **
|
||||
@ -98,9 +98,6 @@
|
||||
# fixes.
|
||||
=sys-libs/readline-8.2_p1 ~amd64 ~arm64
|
||||
|
||||
# ?
|
||||
=sys-power/acpid-2.0.33 ~amd64 ~arm64
|
||||
|
||||
# Needed to fix CVE-2023-4016.
|
||||
=sys-process/procps-4.0.4 ~amd64 ~arm64
|
||||
|
||||
|
1
sdk_container/src/third_party/coreos-overlay/sys-cluster/ipvsadm/Manifest
vendored
Normal file
1
sdk_container/src/third_party/coreos-overlay/sys-cluster/ipvsadm/Manifest
vendored
Normal file
@ -0,0 +1 @@
|
||||
DIST ipvsadm-1.31.tar.xz 42396 BLAKE2B a42ceea834fb16e25ea34417227f6b632fe3b94c8a7ce5d3daff4375884fd47f14999551eab3bf7226d5eb02f25aef4c77a8287592b642946683bc5ddc6783da SHA512 1c7187405771e702eff0009d688fa697375b833a486ff88b41a4a0dcfaa3e9884c7e3bc34375efea5f6a2d025847c9fac9fd6ba694ec3bf2fc9d357eef2cb631
|
@ -0,0 +1,367 @@
|
||||
From 11317a755aaa77ba7696ca3eda7b7439f3f53e4b Mon Sep 17 00:00:00 2001
|
||||
From: Krzesimir Nowak <knowak@microsoft.com>
|
||||
Date: Fri, 24 Nov 2023 15:15:48 +0100
|
||||
Subject: [PATCH] Improve build system a bit
|
||||
|
||||
- Allow overriding a path to pkg-config for cross-compilation
|
||||
purposes. The builder can specify PKG_CONFIG variable to change the
|
||||
default value being "pkg-config".
|
||||
|
||||
- Do the same for "ar". Can be overridden by specifying AR variable.
|
||||
|
||||
- Try to detect popt library using pkg-config. If it fails, fall back
|
||||
to passing -lpopt to the linker.
|
||||
|
||||
- Try to detect CFLAGS for both popt and libnl using pkg-config.
|
||||
|
||||
- Drop obsolete POPT_DEFINE variable.
|
||||
|
||||
- Move building of libipvs libraries to main Makefile to avoid
|
||||
duplicating library detections and other things.
|
||||
|
||||
- Allow declaring if ipvsadm should be linked with shared or static
|
||||
libipvs.
|
||||
|
||||
- Build shared library objects separately from static library objects
|
||||
as they may need different compiler options.
|
||||
|
||||
- Allow declaring which variants of libipvs to build.
|
||||
|
||||
- Install libraries too. Specify LIB variable to override the default
|
||||
/usr/lib location.
|
||||
|
||||
- Support using widely-used DESTDIR variable. BUILD_ROOT is still
|
||||
supported - only one of the two can be specified.
|
||||
|
||||
- Allow overriding CFLAGS without clobbering the warning flags. The
|
||||
warning flags can be overridden by specifying OPTFLAGS.
|
||||
|
||||
- Fix man directory, should be /usr/share/man, not /usr/man.
|
||||
|
||||
- Allow providing config.mk, which can be used to configure the
|
||||
project via a file.
|
||||
---
|
||||
Makefile | 219 +++++++++++++++++++++++++++++++++++++----------
|
||||
libipvs/Makefile | 44 ----------
|
||||
2 files changed, 176 insertions(+), 87 deletions(-)
|
||||
delete mode 100644 libipvs/Makefile
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 91a2991..9ed9a27 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -35,26 +35,80 @@ ARCH = $(shell uname -m)
|
||||
RPMSOURCEDIR = $(shell rpm --eval '%_sourcedir')
|
||||
RPMSPECDIR = $(shell rpm --eval '%_specdir')
|
||||
|
||||
+# Both have the same function, so at most one of those may be
|
||||
+# non-empty. DESTDIR is preferred as it's more standard name.
|
||||
+BUILD_ROOT =
|
||||
+DESTDIR =
|
||||
+
|
||||
+# Specify to 1 if the projects should be built using libnl.
|
||||
+HAVE_NL = 0
|
||||
+
|
||||
+AR = ar
|
||||
CC = gcc
|
||||
-INCLUDE =
|
||||
-SBIN = $(BUILD_ROOT)/sbin
|
||||
-MANDIR = usr/man
|
||||
-MAN = $(BUILD_ROOT)/$(MANDIR)/man8
|
||||
-INIT = $(BUILD_ROOT)/etc/rc.d/init.d
|
||||
MKDIR = mkdir
|
||||
INSTALL = install
|
||||
-STATIC_LIBS = libipvs/libipvs.a
|
||||
+PKG_CONFIG = pkg-config
|
||||
+
|
||||
+INCLUDE =
|
||||
+
|
||||
+SBIN = /sbin
|
||||
+MAN = /usr/share/man/man8
|
||||
+INIT = /etc/rc.d/init.d
|
||||
+LIB = /usr/lib
|
||||
+
|
||||
+SHARED_LIB = libipvs.so
|
||||
+STATIC_LIB = libipvs.a
|
||||
+# either shared or static, selects the library type the binary should
|
||||
+# be linked with
|
||||
+LINK_WITH = static
|
||||
+# either shared, static or both, decides which libraries should be
|
||||
+# built; must be consistent with LINK_WITH
|
||||
+BUILD_LIBS = both
|
||||
|
||||
ifeq "${ARCH}" "sparc64"
|
||||
- CFLAGS = -Wall -Wunused -Wstrict-prototypes -g -m64 -pipe -mcpu=ultrasparc -mcmodel=medlow
|
||||
+ CFLAGS = -g -m64 -pipe -mcpu=ultrasparc -mcmodel=medlow
|
||||
else
|
||||
- CFLAGS = -Wall -Wunused -Wstrict-prototypes -g
|
||||
+ CFLAGS = -g
|
||||
endif
|
||||
|
||||
+OPTFLAGS = -Wall -Wunused -Wstrict-prototypes
|
||||
+
|
||||
+# Optionally include config.mk which may set up/override the variables
|
||||
+# above.
|
||||
+-include config.mk
|
||||
|
||||
#####################################
|
||||
# No servicable parts below this line
|
||||
|
||||
+ifneq "$(BUILD_ROOT)" ""
|
||||
+ifneq "$(DESTDIR)" ""
|
||||
+$(error At most one of BUILD_ROOT or DESTDIR can be specified)
|
||||
+endif
|
||||
+DESTDIR=$(BUILD_ROOT)
|
||||
+endif
|
||||
+
|
||||
+OPT_BAD=
|
||||
+ifneq "$(firstword $(BUILD_LIBS))" "$(BUILD_LIBS)"
|
||||
+OPT_BAD=x
|
||||
+endif
|
||||
+ifneq "$(findstring $(BUILD_LIBS),shared static both)" "$(BUILD_LIBS)"
|
||||
+OPT_BAD=x
|
||||
+endif
|
||||
+ifneq "$(OPT_BAD)" ""
|
||||
+$(error "BUILD_LIBS must be either 'shared', 'static' or 'both'")
|
||||
+endif
|
||||
+
|
||||
+OPT_BAD=
|
||||
+ifneq "$(firstword $(LINK_WITH))" "$(LINK_WITH)"
|
||||
+OPT_BAD=x
|
||||
+endif
|
||||
+ifneq "$(findstring $(LINK_WITH),shared static)" "$(LINK_WITH)"
|
||||
+OPT_BAD=x
|
||||
+endif
|
||||
+ifneq "$(OPT_BAD)" ""
|
||||
+$(error "LINK_WITH must be either 'shared' or 'static'")
|
||||
+endif
|
||||
+
|
||||
RPMBUILD = $(shell \
|
||||
if [ -x /usr/bin/rpmbuild ]; then \
|
||||
echo "/usr/bin/rpmbuild"; \
|
||||
@@ -62,51 +116,133 @@ RPMBUILD = $(shell \
|
||||
echo "/bin/rpm"; \
|
||||
fi )
|
||||
|
||||
-OBJS = ipvsadm.o config_stream.o dynamic_array.o
|
||||
-LIBS = -lpopt
|
||||
+SHARED_LIB_PATH=libipvs/$(SHARED_LIB)
|
||||
+STATIC_LIB_PATH=libipvs/$(STATIC_LIB)
|
||||
+
|
||||
+POPT_CFLAGS = ""
|
||||
+POPT_LIBS = -lpopt
|
||||
+LIBNL_CFLAGS = ""
|
||||
+LIBNL_LIBS = -lnl
|
||||
+
|
||||
+HAS_PKG_CONFIG = $(shell if command -v $(PKG_CONFIG) > /dev/null 2>&1; then echo x; fi)
|
||||
+ifneq "$(HAS_PKG_CONFIG)" ""
|
||||
+
|
||||
+POPT_MOD = $(shell if $(PKG_CONFIG) --exists popt; then echo popt; fi)
|
||||
+ifneq "$(POPT_MOD)" ""
|
||||
+POPT_CFLAGS = $(shell $(PKG_CONFIG) --cflags $(POPT_MOD))
|
||||
+POPT_LIBS = $(shell $(PKG_CONFIG) --libs $(POPT_MOD))
|
||||
+endif # POPT_MOD
|
||||
+
|
||||
+LIBNL_MOD = $(shell \
|
||||
+ if $(PKG_CONFIG) --exists libnl-genl-3.0; then echo libnl-genl-3.0; \
|
||||
+ elif $(PKG_CONFIG) --exists libnl-2.0; then echo libnl-2.0; \
|
||||
+ elif $(PKG_CONFIG) --exists libnl-1; then echo libnl-1; \
|
||||
+ fi)
|
||||
+ifneq "$(LIBNL_MOD)" ""
|
||||
+LIBNL_CFLAGS = $(shell $(PKG_CONFIG) --cflags $(LIBNL_MOD))
|
||||
+LIBNL_LIBS = $(shell $(PKG_CONFIG) --libs $(LIBNL_MOD))
|
||||
+endif # LIBNL_MOD
|
||||
+
|
||||
+endif # HAS_PKG_CONFIG
|
||||
+
|
||||
+COMMON_DEFINES = $(shell if [ ! -f ../ip_vs.h ]; then \
|
||||
+ echo "-DHAVE_NET_IP_VS_H"; fi)
|
||||
+
|
||||
+BIN_SOURCES = ipvsadm.c config_stream.c dynamic_array.c
|
||||
+BIN_CFLAGS = $(POPT_CFLAGS)
|
||||
+BIN_LIBS =
|
||||
+BIN_OBJS = $(patsubst %.c,bin_%.o,$(BIN_SOURCES))
|
||||
+BIN_DEFINES = -DVERSION=\"$(VERSION)\" -DSCHEDULERS=\"$(SCHEDULERS)\" \
|
||||
+ -DPE_LIST=\"$(PE_LIST)\"
|
||||
+ifeq "$(LINK_WITH)" "static"
|
||||
+BIN_LIBIPVS_DEP = $(STATIC_LIB_PATH)
|
||||
+BIN_LIBS += $(STATIC_LIB_PATH)
|
||||
+ifneq "$(findstring $(BUILD_LIBS),static both)" "$(BUILD_LIBS)"
|
||||
+$(error "Linking with static library, but it is not built")
|
||||
+endif # BUILD_LIBS static both
|
||||
+else ifeq "$(LINK_WITH)" "shared"
|
||||
+BIN_LIBIPVS_DEP = $(SHARED_LIB_PATH)
|
||||
+BIN_LIBS += -Llibipvs -lipvs
|
||||
+ifneq "$(findstring $(BUILD_LIBS),shared both)" "$(BUILD_LIBS)"
|
||||
+$(error "Linking with shared library, but it is not built")
|
||||
+endif # BUILD_LIBS shared both
|
||||
+endif # LINK_WITH
|
||||
+
|
||||
+BIN_LIBS += $(POPT_LIBS)
|
||||
ifneq (0,$(HAVE_NL))
|
||||
-LIBS += $(shell \
|
||||
- if which pkg-config > /dev/null 2>&1; then \
|
||||
- if pkg-config --libs libnl-genl-3.0 2> /dev/null; then :;\
|
||||
- elif pkg-config --libs libnl-2.0 2> /dev/null; then :;\
|
||||
- elif pkg-config --libs libnl-1 2> /dev/null; then :;\
|
||||
- fi; \
|
||||
- else echo "-lnl"; fi)
|
||||
+BIN_CFLAGS += $(LIBNL_CFLAGS)
|
||||
+BIN_LIBS += $(LIBNL_LIBS)
|
||||
endif
|
||||
-DEFINES = -DVERSION=\"$(VERSION)\" -DSCHEDULERS=\"$(SCHEDULERS)\" \
|
||||
- -DPE_LIST=\"$(PE_LIST)\" $(POPT_DEFINE)
|
||||
-DEFINES += $(shell if [ ! -f ../ip_vs.h ]; then \
|
||||
- echo "-DHAVE_NET_IP_VS_H"; fi;)
|
||||
|
||||
+bin_%.o: %.c
|
||||
+ $(CC) $(OPTFLAGS) $(CFLAGS) $(BIN_CFLAGS) $(BIN_INCLUDES) $(BIN_DEFINES) $(COMMON_DEFINES) -c -o $@ $<
|
||||
|
||||
-.PHONY = all clean install dist distclean rpm rpms
|
||||
+ipvsadm: $(BIN_OBJS) $(BIN_LIBIPVS_DEP)
|
||||
+ $(CC) $(LDFLAGS) $(OPTFLAGS) $(CFLAGS) -o $@ $(BIN_OBJS) $(BIN_LIBS)
|
||||
|
||||
-all: libs ipvsadm
|
||||
+LIB_SOURCES = libipvs/libipvs.c libipvs/ip_vs_nl_policy.c
|
||||
+LIB_CFLAGS =
|
||||
+LIB_LIBS =
|
||||
+LIB_DEFINES =
|
||||
+LIB_INCLUDES = $(shell if [ -f ../ip_vs.h ]; then \
|
||||
+ echo "-I../../."; fi)
|
||||
+ifneq (0,$(HAVE_NL))
|
||||
+LIB_CFLAGS += $(LIBNL_CFLAGS)
|
||||
+LIB_LIBS += $(LIBNL_LIBS)
|
||||
+LIB_DEFINES += -DLIBIPVS_USE_NL
|
||||
+ifeq ($(LIBNL_MOD),libnl-1)
|
||||
+LIB_DEFINES += -DFALLBACK_LIBNL1
|
||||
+endif # libnl-1
|
||||
+endif # HAVE_NL
|
||||
|
||||
-libs:
|
||||
- make -C libipvs
|
||||
+ALL_BUILT_LIBS=
|
||||
+ifeq "$(findstring $(BUILD_LIBS),shared both)" "$(BUILD_LIBS)"
|
||||
+SH_LIB_CFLAGS = -fPIC
|
||||
+SH_LIB_OBJS = $(patsubst libipvs/%.c,libipvs/sh_%.o,$(LIB_SOURCES))
|
||||
|
||||
-ipvsadm: $(OBJS) $(STATIC_LIBS)
|
||||
- $(CC) $(CFLAGS) -o $@ $^ $(LIBS)
|
||||
+libipvs/sh_%.o: libipvs/%.c
|
||||
+ $(CC) $(SH_LIB_CFLAGS) $(OPTFLAGS) $(CFLAGS) $(LIB_CFLAGS) $(LIB_INCLUDES) $(LIB_DEFINES) $(COMMON_DEFINES) -c -o $@ $<
|
||||
|
||||
-install: all
|
||||
- if [ ! -d $(SBIN) ]; then $(MKDIR) -p $(SBIN); fi
|
||||
- $(INSTALL) -m 0755 ipvsadm $(SBIN)
|
||||
- $(INSTALL) -m 0755 ipvsadm-save $(SBIN)
|
||||
- $(INSTALL) -m 0755 ipvsadm-restore $(SBIN)
|
||||
- [ -d $(MAN) ] || $(MKDIR) -p $(MAN)
|
||||
- $(INSTALL) -m 0644 ipvsadm.8 $(MAN)
|
||||
- $(INSTALL) -m 0644 ipvsadm-save.8 $(MAN)
|
||||
- $(INSTALL) -m 0644 ipvsadm-restore.8 $(MAN)
|
||||
- [ -d $(INIT) ] || $(MKDIR) -p $(INIT)
|
||||
- $(INSTALL) -m 0755 ipvsadm.sh $(INIT)/ipvsadm
|
||||
+$(SHARED_LIB_PATH): $(SH_LIB_OBJS)
|
||||
+ $(CC) $(LDFLAGS) -shared -Wl,-soname,$(SHARED_LIB) -o $@ $^
|
||||
+
|
||||
+ALL_BUILT_LIBS += $(SHARED_LIB_PATH)
|
||||
+endif
|
||||
+
|
||||
+ifeq "$(findstring $(BUILD_LIBS),static both)" "$(BUILD_LIBS)"
|
||||
+ST_LIB_CFLAGS =
|
||||
+ST_LIB_OBJS = $(patsubst libipvs/%.c,libipvs/st_%.o,$(LIB_SOURCES))
|
||||
+
|
||||
+libipvs/st_%.o: libipvs/%.c
|
||||
+ $(CC) $(ST_LIB_CFLAGS) $(OPTFLAGS) $(CFLAGS) $(LIB_CFLAGS) $(LIB_INCLUDES) $(LIB_DEFINES) $(COMMON_DEFINES) -c -o $@ $<
|
||||
+
|
||||
+$(STATIC_LIB_PATH): $(ST_LIB_OBJS)
|
||||
+ $(AR) rv $@ $^
|
||||
+
|
||||
+ALL_BUILT_LIBS += $(STATIC_LIB_PATH)
|
||||
+endif
|
||||
+
|
||||
+all: ipvsadm $(ALL_BUILT_LIBS)
|
||||
+
|
||||
+install: all
|
||||
+ if [ ! -d $(DESTDIR)$(SBIN) ]; then $(MKDIR) -p $(DESTDIR)$(SBIN); fi
|
||||
+ $(INSTALL) -m 0755 ipvsadm $(DESTDIR)$(SBIN)
|
||||
+ $(INSTALL) -m 0755 ipvsadm-save $(DESTDIR)$(SBIN)
|
||||
+ $(INSTALL) -m 0755 ipvsadm-restore $(DESTDIR)$(SBIN)
|
||||
+ [ -d $(DESTDIR)$(MAN) ] || $(MKDIR) -p $(DESTDIR)$(MAN)
|
||||
+ $(INSTALL) -m 0644 ipvsadm.8 $(DESTDIR)$(MAN)
|
||||
+ $(INSTALL) -m 0644 ipvsadm-save.8 $(DESTDIR)$(MAN)
|
||||
+ $(INSTALL) -m 0644 ipvsadm-restore.8 $(DESTDIR)$(MAN)
|
||||
+ [ -d $(DESTDIR)$(INIT) ] || $(MKDIR) -p $(DESTDIR)$(INIT)
|
||||
+ $(INSTALL) -m 0755 ipvsadm.sh $(DESTDIR)$(INIT)/ipvsadm
|
||||
+ [ -d $(DESTDIR)$(LIB) ] || $(MKDIR) -p $(DESTDIR)$(LIB)
|
||||
+ $(INSTALL) -m 0644 $(ALL_BUILT_LIBS) $(DESTDIR)$(LIB)
|
||||
|
||||
clean:
|
||||
rm -f ipvsadm $(NAME).spec $(NAME)-$(VERSION).tar.gz
|
||||
rm -rf debian/tmp
|
||||
find . -name '*.[ao]' -o -name "*~" -o -name "*.orig" \
|
||||
- -o -name "*.rej" -o -name core | xargs rm -f
|
||||
- make -C libipvs clean
|
||||
+ -o -name "*.rej" -o -name core -o -name '*.so' | xargs rm -f
|
||||
|
||||
distclean: clean
|
||||
|
||||
@@ -137,6 +273,3 @@ deb: debs
|
||||
|
||||
debs:
|
||||
dpkg-buildpackage
|
||||
-
|
||||
-%.o: %.c
|
||||
- $(CC) $(CFLAGS) $(INCLUDE) $(DEFINES) -c -o $@ $<
|
||||
diff --git a/libipvs/Makefile b/libipvs/Makefile
|
||||
deleted file mode 100644
|
||||
index f845c8b..0000000
|
||||
--- a/libipvs/Makefile
|
||||
+++ /dev/null
|
||||
@@ -1,44 +0,0 @@
|
||||
-# Makefile for libipvs
|
||||
-
|
||||
-CC = gcc
|
||||
-CFLAGS = -Wall -Wunused -Wstrict-prototypes -g -fPIC
|
||||
-ifneq (0,$(HAVE_NL))
|
||||
-CFLAGS += -DLIBIPVS_USE_NL
|
||||
-CFLAGS += $(shell \
|
||||
- if which pkg-config > /dev/null 2>&1; then \
|
||||
- if pkg-config --cflags libnl-3.0 2> /dev/null; then :; \
|
||||
- elif pkg-config --cflags libnl-2.0 2> /dev/null; then :; \
|
||||
- elif pkg-config --cflags libnl-1 2> /dev/null; then :; \
|
||||
- fi; \
|
||||
- fi)
|
||||
-endif
|
||||
-
|
||||
-INCLUDE += $(shell if [ -f ../../ip_vs.h ]; then \
|
||||
- echo "-I../../."; fi;)
|
||||
-DEFINES = $(shell if [ ! -f ../../ip_vs.h ]; then \
|
||||
- echo "-DHAVE_NET_IP_VS_H"; fi;)
|
||||
-DEFINES += $(shell if which pkg-config > /dev/null 2>&1; then \
|
||||
- if pkg-config --exists libnl-3.0; then :; \
|
||||
- elif pkg-config --exists libnl-2.0; then :; \
|
||||
- elif pkg-config --exists libnl-1; \
|
||||
- then echo "-DFALLBACK_LIBNL1"; fi; fi)
|
||||
-
|
||||
-.PHONY = all clean install dist distclean rpm rpms
|
||||
-STATIC_LIB = libipvs.a
|
||||
-SHARED_LIB = libipvs.so
|
||||
-
|
||||
-all: $(STATIC_LIB) $(SHARED_LIB)
|
||||
-
|
||||
-$(STATIC_LIB): libipvs.o ip_vs_nl_policy.o
|
||||
- ar rv $@ $^
|
||||
-
|
||||
-$(SHARED_LIB): libipvs.o ip_vs_nl_policy.o
|
||||
- $(CC) -shared -Wl,-soname,$@ -o $@ $^
|
||||
-
|
||||
-%.o: %.c
|
||||
- $(CC) $(CFLAGS) $(INCLUDE) $(DEFINES) -c -o $@ $<
|
||||
-
|
||||
-clean:
|
||||
- rm -f *.[ao] *~ *.orig *.rej core *.so
|
||||
-
|
||||
-distclean: clean
|
||||
--
|
||||
2.34.1
|
||||
|
54
sdk_container/src/third_party/coreos-overlay/sys-cluster/ipvsadm/ipvsadm-1.31-r1.ebuild
vendored
Normal file
54
sdk_container/src/third_party/coreos-overlay/sys-cluster/ipvsadm/ipvsadm-1.31-r1.ebuild
vendored
Normal file
@ -0,0 +1,54 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit linux-info toolchain-funcs
|
||||
|
||||
DESCRIPTION="utility to administer the IP virtual server services"
|
||||
HOMEPAGE="http://linuxvirtualserver.org/"
|
||||
SRC_URI="https://kernel.org/pub/linux/utils/kernel/ipvsadm/ipvsadm-${PV}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~ia64 ~arm64 ~ppc ppc64 ~s390 sparc x86"
|
||||
IUSE="static-libs"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/libnl:=
|
||||
>=dev-libs/popt-1.16
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PATCHES=( "${FILESDIR}/${PN}"-1.31-buildsystem.patch )
|
||||
|
||||
src_configure() {
|
||||
cat <<EOF >config.mk
|
||||
HAVE_NL = 1
|
||||
AR = $(tc-getAR)
|
||||
CC = $(tc-getCC)
|
||||
PKG_CONFIG = $(tc-getPKG_CONFIG)
|
||||
LINK_WITH = shared
|
||||
BUILD_LIBS = $(usex static-libs both shared)
|
||||
LIB = /usr/$(get_libdir)
|
||||
CFLAGS = ${CFLAGS}
|
||||
LDFLAGS = ${LDFLAGS}
|
||||
EOF
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
rm -rf "${D}/etc/rc.d/"
|
||||
|
||||
insinto /usr/include/ipvs
|
||||
newins libipvs/libipvs.h ipvs.h
|
||||
doins libipvs/ip_vs.h
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
einfo "You will need a kernel that has ipvs patches to use LVS."
|
||||
}
|
1
sdk_container/src/third_party/portage-stable/app-text/mandoc/Manifest
vendored
Normal file
1
sdk_container/src/third_party/portage-stable/app-text/mandoc/Manifest
vendored
Normal file
@ -0,0 +1 @@
|
||||
DIST mandoc-1.14.6.tar.gz 697150 BLAKE2B e9f6087e9df977901815b1231f68e381502c7392b0ac65a060ce0ef270da3b76540a17931a076b700865a02f9ca1a8ca044a54dbf6318756931c29e6b1deb228 SHA512 54286070812a47b629f68757046d3c9a1bdd2b5d1c3b84a5c8e4cb92f1331afa745443f7238175835d8cfbe5b8dd442e00c75c3a5b5b8f8efd8d2ec8f636dad4
|
@ -0,0 +1,19 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index f4e2954..191c7e2 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -535,9 +535,11 @@ soelim: $(SOELIM_OBJS)
|
||||
# --- maintainer targets ---
|
||||
|
||||
www-install: www
|
||||
- $(INSTALL_DATA) mandoc.css $(HTDOCDIR)
|
||||
- $(INSTALL_DATA) $(WWW_MANS) $(HTDOCDIR)/man
|
||||
- $(INSTALL_DATA) $(WWW_INCS) $(HTDOCDIR)/includes
|
||||
+ mkdir -p $(DESTDIR)$(HTDOCDIR)/man
|
||||
+ mkdir -p $(DESTDIR)$(HTDOCDIR)/includes
|
||||
+ $(INSTALL_DATA) mandoc.css $(DESTDIR)$(HTDOCDIR)
|
||||
+ $(INSTALL_DATA) $(WWW_MANS) $(DESTDIR)$(HTDOCDIR)/man
|
||||
+ $(INSTALL_DATA) $(WWW_INCS) $(DESTDIR)$(HTDOCDIR)/includes
|
||||
|
||||
depend: config.h
|
||||
mkdep -f Makefile.depend $(CFLAGS) $(SRCS)
|
6
sdk_container/src/third_party/portage-stable/app-text/mandoc/files/mandoc.cron-r0
vendored
Normal file
6
sdk_container/src/third_party/portage-stable/app-text/mandoc/files/mandoc.cron-r0
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
# need MANPATH
|
||||
. /etc/profile.env
|
||||
|
||||
exec nice makewhatis -T utf8 2>/dev/null
|
131
sdk_container/src/third_party/portage-stable/app-text/mandoc/mandoc-1.14.6.ebuild
vendored
Normal file
131
sdk_container/src/third_party/portage-stable/app-text/mandoc/mandoc-1.14.6.ebuild
vendored
Normal file
@ -0,0 +1,131 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="Suite of tools compiling mdoc and man"
|
||||
HOMEPAGE="https://mdocml.bsd.lv/"
|
||||
SRC_URI="https://mdocml.bsd.lv/snapshots/${P}.tar.gz"
|
||||
|
||||
LICENSE="ISC"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
IUSE="cgi selinux system-man test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="sys-libs/zlib
|
||||
system-man? ( !sys-apps/man-db )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
cgi? ( sys-libs/zlib[static-libs] )
|
||||
"
|
||||
BDEPEND="
|
||||
cgi? ( app-text/highlight )
|
||||
test? ( dev-lang/perl )
|
||||
"
|
||||
RDEPEND+=" selinux? ( sec-policy/selinux-makewhatis )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.14.5-r1-www-install.patch
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
if use system-man ; then
|
||||
# only support uncompressed and gzip
|
||||
[[ -n ${PORTAGE_COMPRESS+unset} ]] && \
|
||||
[[ "${PORTAGE_COMPRESS}" == "gzip" || "${PORTAGE_COMPRESS}" == "" ]] || \
|
||||
ewarn "only PORTAGE_COMPRESS=gzip or '' is supported, man pages will not be indexed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# The db-install change is to support parallel installs.
|
||||
sed -i \
|
||||
-e '/ar rs/s:ar:$(AR):' \
|
||||
-e '/^db-install:/s:$: base-install:' \
|
||||
Makefile || die
|
||||
|
||||
# make-4.3 doesn't like the CC line (bug #706024)
|
||||
# and "echo -n" is not portable
|
||||
sed \
|
||||
-e "s@^\(CC=\).*\$@\1\"$(tc-getCC)\"@" \
|
||||
-e 's@echo -n@printf@g' \
|
||||
-i configure || die
|
||||
|
||||
cat <<-EOF > "configure.local"
|
||||
PREFIX="${EPREFIX}/usr"
|
||||
BINDIR="${EPREFIX}/usr/bin"
|
||||
SBINDIR="${EPREFIX}/usr/sbin"
|
||||
LIBDIR="${EPREFIX}/usr/$(get_libdir)"
|
||||
MANDIR="${EPREFIX}/usr/share/man"
|
||||
INCLUDEDIR="${EPREFIX}/usr/include/mandoc"
|
||||
EXAMPLEDIR="${EPREFIX}/usr/share/examples/mandoc"
|
||||
MANPATH_DEFAULT="${EPREFIX}/usr/man:${EPREFIX}/usr/share/man:${EPREFIX}/usr/local/man:${EPREFIX}/usr/local/share/man"
|
||||
|
||||
CFLAGS="${CFLAGS} ${CPPFLAGS}"
|
||||
LDFLAGS="${LDFLAGS}"
|
||||
AR="$(tc-getAR)"
|
||||
CC="$(tc-getCC)"
|
||||
# The STATIC variable is only used by man.cgi.
|
||||
STATIC=
|
||||
|
||||
# conflicts with sys-apps/groff
|
||||
BINM_SOELIM=msoelim
|
||||
MANM_ROFF=mandoc_roff
|
||||
# conflicts with sys-apps/man-pages
|
||||
MANM_MAN=mandoc_man
|
||||
|
||||
# fix utf-8 locale on musl
|
||||
$(usex elibc_musl UTF8_LOCALE=C.UTF-8 '')
|
||||
EOF
|
||||
use system-man || cat <<-EOF >> "configure.local"
|
||||
BINM_MAN=mman
|
||||
BINM_APROPOS=mapropos
|
||||
BINM_WHATIS=mwhatis
|
||||
BINM_MAKEWHATIS=mmakewhatis
|
||||
MANM_MDOC=mandoc_mdoc
|
||||
MANM_EQN=mandoc_eqn
|
||||
MANM_TBL=mandoc_tbl
|
||||
MANM_MANCONF=mman.conf
|
||||
EOF
|
||||
if use cgi; then
|
||||
cp cgi.h{.example,} || die
|
||||
fi
|
||||
if [[ -n "${MANDOC_CGI_H}" ]]; then
|
||||
cp "${MANDOC_CGI_H}" cgi.h || die
|
||||
fi
|
||||
|
||||
# ./configure does not propagate all configure.local
|
||||
# settings to Makefile.local settings.
|
||||
tc-export AR
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
default
|
||||
use cgi && emake man.cgi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake regress
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
use cgi && emake DESTDIR="${D}" cgi-install www-install
|
||||
|
||||
if use system-man ; then
|
||||
exeinto /etc/cron.daily
|
||||
newexe "${FILESDIR}"/mandoc.cron-r0 mandoc
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use system-man ; then
|
||||
elog "Generating mandoc database"
|
||||
makewhatis || die
|
||||
fi
|
||||
}
|
11
sdk_container/src/third_party/portage-stable/app-text/mandoc/metadata.xml
vendored
Normal file
11
sdk_container/src/third_party/portage-stable/app-text/mandoc/metadata.xml
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="cgi">build man.cgi web plugin for viewing man pages</flag>
|
||||
<flag name="system-man">set as the default man provider</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
@ -1,4 +1,2 @@
|
||||
DIST efibootmgr-14.tar.bz2 34972 BLAKE2B 78490756c5fd449f4319b79e0818e9d80340bd487f57d0de34f79f48cc24eb7b9c7309b535d00efad4babd40904d4cfb085cca278170625a1e875961e423f5dd SHA512 97935f8752440ce236162e174ea3404e907ebddc5877d597a97813da76ad580689fc2e97044885fc860a12a473af7183242b6120e78e53243d35e569fb002baf
|
||||
DIST efibootmgr-15.tar.bz2 35476 BLAKE2B 19b7c9ce51f3b930b2d59fa4a594c7a8bf5f1c7aa3224049e88cdafe82991799b1b719ec68c80131027f70c16bd19e38157f5d0bc7761843959410c667aa4070 SHA512 d9d9eef14d373d5da88141e8105f754fea4c039755ed0a0cb9b3c9c2bb285733ad930fd912df42075fe2cf750585699307b067f594d8e65269b3b8a5a00b1cd1
|
||||
DIST efibootmgr-16.tar.bz2 36603 BLAKE2B 3d09a9d3c4ecd48010315fccae60ab408c0d08e9c734e86a944130ea03e038835fa08745819f5353efbbe36f5017be64faded4b625ef0a0b55d4ca0d612ef232 SHA512 936318c7163c07b716f89be3d830957d9db68ba1b059223f7ea3d9eafe0dbf1c91b9aee096f5aed70955c6052c3b8547295c0a47f17cdf43788259d87d1990b9
|
||||
DIST efibootmgr-17.tar.gz 41643 BLAKE2B a1995a5df74766f762d2eb971fd6095edea8d0a498c9dd1100515866b40c38ae2f299aae51f12767850ec23fbe4709c2c7428dd48755fbec499669b69f6432c9 SHA512 10c7ad9a79f23dcd4708dc4f42701196af7aa11f5e9a6468ea51f7013d4caeba6c92527ba1304f6e3b2ef3b51b3b69ea1a30f81bb099a8aea49eeb30eb631e1d
|
||||
DIST efibootmgr-18.tar.gz 45220 BLAKE2B 6bc3f39ee395d2045e78b19876fd9404ba41443259e9ad7446671d768a63dc1418d5a192600392fd95251159d80479008a2c22b4cd503bba2f4a869850cb3652 SHA512 04e40a705cb82440fd823043b598ef9fd1acc2ceda3e8d043a93e49d43ea9481b7386cad0f46de9862beff19b8a5480d79e7d6522ae584aff6655472f967764d
|
||||
|
@ -1,28 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="User-space application to modify the EFI boot manager"
|
||||
HOMEPAGE="https://github.com/rhinstaller/efibootmgr"
|
||||
SRC_URI="https://github.com/rhinstaller/efibootmgr/releases/download/${PV}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm ~arm64 ~ia64 x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="sys-apps/pciutils
|
||||
>=sys-libs/efivar-25:="
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e s/-Werror// Make.defaults || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CC
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="User-space application to modify the EFI boot manager"
|
||||
HOMEPAGE="https://github.com/rhinstaller/efibootmgr"
|
||||
SRC_URI="https://github.com/rhinstaller/efibootmgr/releases/download/${PV}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm ~arm64 ~ia64 x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="sys-apps/pciutils
|
||||
>=sys-libs/efivar-25:="
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e s/-Werror// Make.defaults || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CC
|
||||
export EFIDIR="Gentoo"
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
@ -11,9 +11,10 @@ SRC_URI="https://github.com/rhboot/efibootmgr/archive/${PV}.tar.gz -> ${P}.tar.g
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm arm64 ~ia64 ~riscv x86"
|
||||
KEYWORDS="amd64 ~arm arm64 ~ia64 ~loong ~riscv x86"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/popt
|
||||
sys-apps/pciutils
|
||||
>=sys-libs/efivar-37:=
|
||||
"
|
@ -1,29 +1,29 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
EAPI=8
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="User-space application to modify the EFI boot manager"
|
||||
HOMEPAGE="https://github.com/rhinstaller/efibootmgr"
|
||||
SRC_URI="https://github.com/rhinstaller/efibootmgr/releases/download/${PV}/${P}.tar.bz2"
|
||||
SRC_URI="https://github.com/rhboot/efibootmgr/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm arm64 ~ia64 x86"
|
||||
IUSE=""
|
||||
KEYWORDS="amd64 arm arm64 ~ia64 ~loong ~riscv x86"
|
||||
|
||||
RDEPEND="sys-apps/pciutils
|
||||
>=sys-libs/efivar-25:="
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
RDEPEND="
|
||||
dev-libs/popt
|
||||
sys-apps/pciutils
|
||||
>=sys-libs/efivar-37:=
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e 's/-Werror //' Make.defaults || die
|
||||
sed -i 's/-Werror //' Make.defaults || die
|
||||
}
|
||||
|
||||
src_configure() {
|
@ -1,2 +1,2 @@
|
||||
DIST gnu-efi-3.0.12.tar.bz2 154575 BLAKE2B 264e04351cf1ef74956e65d209c00514c0f56c18427a87a894132e5a5b0b09b3ca992475a2f95aac42c8a26ff4977ec837ff473d76c1c766049e903f03bd9fff SHA512 cbec6f6e37271c22c71e3ce44d3579e48e7f3b797ec3946f56eb843ed3e472722763c566fc3b749f0c692ab6cb26e8909bb258cd164771a5b1eeff5c7cd51368
|
||||
DIST gnu-efi-3.0.14.tar.bz2 159295 BLAKE2B c7f9127d3bb7e5e2bc52f5fc7be3376ddc5076b262e5db5a30a997cf10bf10288da63ded64d11327fad09190a803ce26e82b32aea2d8525ee0d1e1a23ebadff2 SHA512 37420ba3804e8547451a7b143a689ceb6af0557234fa7801efdeba3c2fc581a5354fe34cbaacb338d7b394d913e7274098ebf07026b7c1d50b2236d7f86c470c
|
||||
DIST gnu-efi-3.0.15.tar.bz2 159399 BLAKE2B 0df93d8cacfa1e6d4b7731e32287d4386da9375c5e5c5847df8a29c99d70f5c24b14abc5e44ab9d0a39a6ec96682eb2b5e84d81a5a142d44a50a522a4ae0e3c2 SHA512 64d408b6d115bdc6eebae12fbd6cd907ed5f847f54e506c1e8f8ea5de38a95cf6fac66ab1009bd1d0bd2d54ad45ad598d29bcc303926a5899bf5cc25448cbb2f
|
||||
DIST gnu-efi-3.0.17.tar.bz2 165568 BLAKE2B 27f8171b411a6a8a138d44d91c7e4e4291aa399562825d51a398913572119482ffeb303d7508ae13eacd2cd10b8f5098405ab16eb56243587efe93235f661285 SHA512 0893ca234272584f889b1ae1c75341a9ceee60acfd32765daa5d704191ba00450536a287b949304c6d055d1bf125cc29e24fc41df8e5230e0da4f9d944876512
|
||||
|
@ -1,9 +1,9 @@
|
||||
# Copyright 2004-2021 Gentoo Authors
|
||||
# Copyright 2004-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic toolchain-funcs
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="Library for build EFI Applications"
|
||||
HOMEPAGE="https://sourceforge.net/projects/gnu-efi/"
|
||||
@ -16,8 +16,12 @@ SRC_URI="mirror://sourceforge/gnu-efi/${P}.tar.bz2"
|
||||
# - GPL-2+ : setjmp_ia32.S
|
||||
LICENSE="GPL-2+ BSD BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64 ~arm ~arm64 ~ia64 ~x86"
|
||||
KEYWORDS="-* amd64 arm arm64 ~ia64 ~riscv x86"
|
||||
IUSE="abi_x86_32 abi_x86_64 custom-cflags"
|
||||
REQUIRED_USE="
|
||||
amd64? ( || ( abi_x86_32 abi_x86_64 ) )
|
||||
x86? ( || ( abi_x86_32 abi_x86_64 ) )
|
||||
"
|
||||
|
||||
# These objects get run early boot (i.e. not inside of Linux),
|
||||
# so doing these QA checks on them doesn't make sense.
|
||||
@ -38,6 +42,7 @@ efimake() {
|
||||
aarch64*) arch=aarch64 ;;
|
||||
ia64*) arch=ia64 ;;
|
||||
i?86*) arch=ia32 ;;
|
||||
riscv64*) arch=riscv64;;
|
||||
x86_64*) arch=x86_64 ;;
|
||||
*) die "Unknown CHOST" ;;
|
||||
esac
|
||||
@ -62,18 +67,18 @@ src_compile() {
|
||||
unset CFLAGS CPPFLAGS LDFLAGS
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == x86_64* ]]; then
|
||||
if use amd64 || use x86; then
|
||||
use abi_x86_32 && CHOST=i686 ABI=x86 efimake
|
||||
use abi_x86_64 && efimake
|
||||
use abi_x86_64 && CHOST=x86_64 ABI=amd64 efimake
|
||||
else
|
||||
efimake
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if [[ ${CHOST} == x86_64* ]]; then
|
||||
if use amd64 || use x86; then
|
||||
use abi_x86_32 && CHOST=i686 ABI=x86 efimake INSTALLROOT="${D}" install
|
||||
use abi_x86_64 && efimake INSTALLROOT="${D}" install
|
||||
use abi_x86_64 && CHOST=x86_64 ABI=amd64 efimake INSTALLROOT="${D}" install
|
||||
else
|
||||
efimake INSTALLROOT="${D}" install
|
||||
fi
|
@ -1,9 +1,9 @@
|
||||
# Copyright 2004-2020 Gentoo Authors
|
||||
# Copyright 2004-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic toolchain-funcs
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="Library for build EFI Applications"
|
||||
HOMEPAGE="https://sourceforge.net/projects/gnu-efi/"
|
||||
@ -16,8 +16,12 @@ SRC_URI="mirror://sourceforge/gnu-efi/${P}.tar.bz2"
|
||||
# - GPL-2+ : setjmp_ia32.S
|
||||
LICENSE="GPL-2+ BSD BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 arm arm64 ~ia64 x86"
|
||||
KEYWORDS="-* ~amd64 ~arm ~arm64 ~ia64 ~riscv ~x86"
|
||||
IUSE="abi_x86_32 abi_x86_64 custom-cflags"
|
||||
REQUIRED_USE="
|
||||
amd64? ( || ( abi_x86_32 abi_x86_64 ) )
|
||||
x86? ( || ( abi_x86_32 abi_x86_64 ) )
|
||||
"
|
||||
|
||||
# These objects get run early boot (i.e. not inside of Linux),
|
||||
# so doing these QA checks on them doesn't make sense.
|
||||
@ -38,6 +42,7 @@ efimake() {
|
||||
aarch64*) arch=aarch64 ;;
|
||||
ia64*) arch=ia64 ;;
|
||||
i?86*) arch=ia32 ;;
|
||||
riscv64*) arch=riscv64;;
|
||||
x86_64*) arch=x86_64 ;;
|
||||
*) die "Unknown CHOST" ;;
|
||||
esac
|
||||
@ -49,6 +54,7 @@ efimake() {
|
||||
AS="${AS}"
|
||||
LD="${LD}"
|
||||
AR="${AR}"
|
||||
OBJCOPY="${OBJCOPY}"
|
||||
PREFIX="${EPREFIX}/usr"
|
||||
LIBDIR='$(PREFIX)'/$(get_libdir)
|
||||
)
|
||||
@ -56,30 +62,24 @@ efimake() {
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export BUILD_CC AR AS CC LD
|
||||
tc-export BUILD_CC AR AS CC LD OBJCOPY
|
||||
|
||||
if use custom-cflags; then
|
||||
# https://bugs.gentoo.org/607992
|
||||
filter-mfpmath sse
|
||||
|
||||
# https://bugs.gentoo.org/619628
|
||||
append-flags $(test-flags-CC -mno-avx)
|
||||
else
|
||||
if ! use custom-cflags; then
|
||||
unset CFLAGS CPPFLAGS LDFLAGS
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} == x86_64* ]]; then
|
||||
if use amd64 || use x86; then
|
||||
use abi_x86_32 && CHOST=i686 ABI=x86 efimake
|
||||
use abi_x86_64 && efimake
|
||||
use abi_x86_64 && CHOST=x86_64 ABI=amd64 efimake
|
||||
else
|
||||
efimake
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if [[ ${CHOST} == x86_64* ]]; then
|
||||
if use amd64 || use x86; then
|
||||
use abi_x86_32 && CHOST=i686 ABI=x86 efimake INSTALLROOT="${D}" install
|
||||
use abi_x86_64 && efimake INSTALLROOT="${D}" install
|
||||
use abi_x86_64 && CHOST=x86_64 ABI=amd64 efimake INSTALLROOT="${D}" install
|
||||
else
|
||||
efimake INSTALLROOT="${D}" install
|
||||
fi
|
@ -1,3 +0,0 @@
|
||||
DIST ipvsadm-1.27.tar.xz 38196 BLAKE2B 1b8a72b11c14a909b8b7459c459195d32bb7944ed4a01d963e2b85e8279c5d7d2fd095d9c23473c64dc15881a2b22b439b39c10b2019b3183f54e22535a258a9 SHA512 cf982b7981674c91d1b7516de7b55cf378b306ce4a53e13976b8eeb8610015c4fa4aa9d251bc4d329db8e05c1862863160af2d3c63b76263f290087cffdf1b80
|
||||
DIST ipvsadm-1.28.tar.xz 38600 BLAKE2B 2a892f858324788b425f7c5aa6ce6a1548c6cd166977d1d36a5236061d1a6ce7e31f6bc1e24a7d53a57406e468271ccebc01330de6be9784c1a955b60eb89d16 SHA512 a1e10ce30751d9439f832e221e5c41b338f87dcc94a0b21329d908a9164f8882049af9d9d918b764b36c30e353d5b8db49d7088e60c24e4748713c06cccf7035
|
||||
DIST ipvsadm-1.31.tar.xz 42396 BLAKE2B a42ceea834fb16e25ea34417227f6b632fe3b94c8a7ce5d3daff4375884fd47f14999551eab3bf7226d5eb02f25aef4c77a8287592b642946683bc5ddc6783da SHA512 1c7187405771e702eff0009d688fa697375b833a486ff88b41a4a0dcfaa3e9884c7e3bc34375efea5f6a2d025847c9fac9fd6ba694ec3bf2fc9d357eef2cb631
|
@ -1,117 +0,0 @@
|
||||
diff -Nuar -Nuar --exclude '*.orig' --exclude '*.rej' ipvsadm-1.27.orig/libipvs/Makefile ipvsadm-1.27/libipvs/Makefile
|
||||
--- ipvsadm-1.27.orig/libipvs/Makefile 2013-09-06 01:37:27.000000000 -0700
|
||||
+++ ipvsadm-1.27/libipvs/Makefile 2013-11-01 23:45:21.633636401 -0700
|
||||
@@ -1,9 +1,9 @@
|
||||
# Makefile for libipvs
|
||||
|
||||
CC = gcc
|
||||
-CFLAGS = -Wall -Wunused -Wstrict-prototypes -g -fPIC
|
||||
+#OPTFLAGS = -Wall -Wunused -Wstrict-prototypes
|
||||
ifneq (0,$(HAVE_NL))
|
||||
-CFLAGS += -DLIBIPVS_USE_NL
|
||||
+DEFINES += -DLIBIPVS_USE_NL
|
||||
CFLAGS += $(shell \
|
||||
if which pkg-config > /dev/null 2>&1; then \
|
||||
if pkg-config --cflags libnl-3.0 2> /dev/null; then :; \
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
INCLUDE += $(shell if [ -f ../../ip_vs.h ]; then \
|
||||
echo "-I../../."; fi;)
|
||||
-DEFINES = $(shell if [ ! -f ../../ip_vs.h ]; then \
|
||||
+DEFINES += $(shell if [ ! -f ../../ip_vs.h ]; then \
|
||||
echo "-DHAVE_NET_IP_VS_H"; fi;)
|
||||
DEFINES += $(shell if which pkg-config > /dev/null 2>&1; then \
|
||||
if pkg-config --exists libnl-3.0; then :; \
|
||||
@@ -24,21 +24,31 @@
|
||||
then echo "-DFALLBACK_LIBNL1"; fi; fi)
|
||||
|
||||
.PHONY = all clean install dist distclean rpm rpms
|
||||
+
|
||||
STATIC_LIB = libipvs.a
|
||||
SHARED_LIB = libipvs.so
|
||||
|
||||
-all: $(STATIC_LIB) $(SHARED_LIB)
|
||||
+TARGETS = $(SHARED_LIB)
|
||||
+ifeq (1,$(STATIC))
|
||||
+TARGETS += $(STATIC_LIB)
|
||||
+endif
|
||||
+all: $(TARGETS)
|
||||
+
|
||||
+SOURCES = libipvs.c ip_vs_nl_policy.c
|
||||
|
||||
-$(STATIC_LIB): libipvs.o ip_vs_nl_policy.o
|
||||
+$(STATIC_LIB): $(SOURCES:%.c=%.o)
|
||||
ar rv $@ $^
|
||||
|
||||
-$(SHARED_LIB): libipvs.o ip_vs_nl_policy.o
|
||||
- $(CC) -shared -Wl,-soname,$@ -o $@ $^
|
||||
+$(SHARED_LIB): $(SOURCES:%.c=%.lo)
|
||||
+ $(CC) $(LDFLAGS) -shared -Wl,-soname,$@ -o $@ $^
|
||||
+
|
||||
+%.lo: %.c
|
||||
+ $(CC) -fPIC $(OPTFLAGS) $(CFLAGS) $(INCLUDE) $(DEFINES) -c -o $@ $<
|
||||
|
||||
%.o: %.c
|
||||
- $(CC) $(CFLAGS) $(INCLUDE) $(DEFINES) -c -o $@ $<
|
||||
+ $(CC) $(OPTFLAGS) $(CFLAGS) $(INCLUDE) $(DEFINES) -c -o $@ $<
|
||||
|
||||
clean:
|
||||
- rm -f *.[ao] *~ *.orig *.rej core *.so
|
||||
+ rm -f *.[ao] *~ *.orig *.rej core *.so *.lo
|
||||
|
||||
distclean: clean
|
||||
diff -Nuar -Nuar --exclude '*.orig' --exclude '*.rej' ipvsadm-1.27.orig/Makefile ipvsadm-1.27/Makefile
|
||||
--- ipvsadm-1.27.orig/Makefile 2013-11-01 23:49:36.523225124 -0700
|
||||
+++ ipvsadm-1.27/Makefile 2013-11-01 23:49:09.478738760 -0700
|
||||
@@ -43,14 +43,13 @@
|
||||
INIT = $(BUILD_ROOT)/etc/rc.d/init.d
|
||||
MKDIR = mkdir
|
||||
INSTALL = install
|
||||
-STATIC_LIBS = libipvs/libipvs.a
|
||||
|
||||
ifeq "${ARCH}" "sparc64"
|
||||
- CFLAGS = -Wall -Wunused -Wstrict-prototypes -g -m64 -pipe -mcpu=ultrasparc -mcmodel=medlow
|
||||
+ CFLAGS := -g -m64 -pipe -mcpu=ultrasparc -mcmodel=medlow
|
||||
else
|
||||
- CFLAGS = -Wall -Wunused -Wstrict-prototypes -g
|
||||
+ CFLAGS := -g
|
||||
endif
|
||||
-
|
||||
+OPTFLAGS += -Wall -Wunused -Wstrict-prototypes
|
||||
|
||||
#####################################
|
||||
# No servicable parts below this line
|
||||
@@ -84,12 +83,14 @@
|
||||
all: libs ipvsadm
|
||||
|
||||
libs:
|
||||
- make -C libipvs
|
||||
+ $(MAKE) -C libipvs CFLAGS="$(CFLAGS)" STATIC="$(STATIC)" OPTFLAGS="$(OPTFLAGS)"
|
||||
+
|
||||
+$(OBJS): libs
|
||||
|
||||
-ipvsadm: $(OBJS) $(STATIC_LIBS)
|
||||
- $(CC) $(CFLAGS) -o $@ $^ $(LIBS)
|
||||
+ipvsadm: $(OBJS)
|
||||
+ $(CC) $(LDFLAGS) $(OPTFLAGS) $(CFLAGS) -o $@ $^ -Llibipvs -lipvs $(LIBS)
|
||||
|
||||
-install: all
|
||||
+install: all
|
||||
if [ ! -d $(SBIN) ]; then $(MKDIR) -p $(SBIN); fi
|
||||
$(INSTALL) -m 0755 ipvsadm $(SBIN)
|
||||
$(INSTALL) -m 0755 ipvsadm-save $(SBIN)
|
||||
@@ -106,7 +107,7 @@
|
||||
rm -rf debian/tmp
|
||||
find . -name '*.[ao]' -o -name "*~" -o -name "*.orig" \
|
||||
-o -name "*.rej" -o -name core | xargs rm -f
|
||||
- make -C libipvs clean
|
||||
+ $(MAKE) -C libipvs clean
|
||||
|
||||
distclean: clean
|
||||
|
||||
@@ -139,4 +140,4 @@
|
||||
dpkg-buildpackage
|
||||
|
||||
%.o: %.c
|
||||
- $(CC) $(CFLAGS) $(INCLUDE) $(DEFINES) -c -o $@ $<
|
||||
+ $(CC) $(OPTFLAGS) $(CFLAGS) $(INCLUDE) $(DEFINES) -c -o $@ $<
|
@ -1,56 +0,0 @@
|
||||
From 8c34d5a0d4c763db9b8f1e54be0c6c3ded6c54e0 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Holler <alexander.holler@1und1.de>
|
||||
Date: Mon, 9 Jan 2012 13:16:55 +0100
|
||||
Subject: [PATCH] libipvs: Fix reporting of the state of the backup-daemon.
|
||||
|
||||
ipvsadm -l --daemon didn't report a running ipvs-backup-daemon
|
||||
(if no master-daemon was run).
|
||||
|
||||
It seems there was some misunderstanding of
|
||||
how the daemons got reported (without using netlink). The state of
|
||||
the backup-daemon is always reported (by the kernel) in the second
|
||||
element of type ip_vs_daemon_user which is returned by the kernel
|
||||
through IP_VS_SO_GET_DAEMON or IPVS_CMD_GET_DAEMON.
|
||||
|
||||
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
|
||||
|
||||
---
|
||||
libipvs/libipvs.c | 11 ++++++-----
|
||||
1 files changed, 6 insertions(+), 5 deletions(-)
|
||||
|
||||
Note: patch adjusted slightly to apply against ipvsadm (was spun for keepalived) - robbat2
|
||||
|
||||
diff --git a/libipvs/libipvs.c b/libipvs/libipvs.c
|
||||
index ea5e851..6bee837 100644
|
||||
--- a/libipvs/libipvs.c
|
||||
+++ b/libipvs/libipvs.c
|
||||
@@ -1003,12 +1003,9 @@ static int ipvs_daemon_parse_cb(struct nl_msg *msg, void *arg)
|
||||
struct nlattr *attrs[IPVS_CMD_ATTR_MAX + 1];
|
||||
struct nlattr *daemon_attrs[IPVS_DAEMON_ATTR_MAX + 1];
|
||||
ipvs_daemon_t *u = (ipvs_daemon_t *)arg;
|
||||
+ __u32 state;
|
||||
int i = 0;
|
||||
|
||||
- /* We may get two daemons. If we've already got one, this is the second */
|
||||
- if (u[0].state)
|
||||
- i = 1;
|
||||
-
|
||||
if (genlmsg_parse(nlh, 0, attrs, IPVS_CMD_ATTR_MAX, ipvs_cmd_policy) != 0)
|
||||
return -1;
|
||||
|
||||
@@ -1021,7 +1018,11 @@ static int ipvs_daemon_parse_cb(struct nl_msg *msg, void *arg)
|
||||
daemon_attrs[IPVS_DAEMON_ATTR_SYNC_ID]))
|
||||
return -1;
|
||||
|
||||
- u[i].state = nla_get_u32(daemon_attrs[IPVS_DAEMON_ATTR_STATE]);
|
||||
+ state = nla_get_u32(daemon_attrs[IPVS_DAEMON_ATTR_STATE]);
|
||||
+ /* The second element is used for the state of the backup daemon. */
|
||||
+ if (state == IP_VS_STATE_BACKUP)
|
||||
+ i = 1;
|
||||
+ u[i].state = state;
|
||||
strncpy(u[i].mcast_ifn,
|
||||
nla_get_string(daemon_attrs[IPVS_DAEMON_ATTR_MCAST_IFN]),
|
||||
IP_VS_IFNAME_MAXLEN);
|
||||
--
|
||||
1.7.6.5
|
||||
|
@ -1,73 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit epatch linux-info toolchain-funcs
|
||||
|
||||
DESCRIPTION="utility to administer the IP virtual server services"
|
||||
HOMEPAGE="http://linuxvirtualserver.org/"
|
||||
SRC_URI="https://kernel.org/pub/linux/utils/kernel/ipvsadm/ipvsadm-${PV}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~ia64 ppc ppc64 ~s390 sparc x86"
|
||||
IUSE="static-libs"
|
||||
|
||||
RDEPEND=">=sys-libs/ncurses-5.2:*
|
||||
dev-libs/libnl:=
|
||||
>=dev-libs/popt-1.16"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
|
||||
pkg_pretend() {
|
||||
if kernel_is 2 4; then
|
||||
eerror "${P} supports only 2.6 series and later kernels, please try ${PN}-1.21 for 2.4 kernels"
|
||||
die "wrong kernel version"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
epatch "${FILESDIR}"/${PN}-1.27-buildsystem.patch
|
||||
# Merged upstream in 1.27
|
||||
#epatch "${FILESDIR}"/${PN}-1.26-stack_smashing.patch # bug 371903
|
||||
epatch "${FILESDIR}"/${PN}-1.27-fix-daemon-state.patch
|
||||
use static-libs && export STATIC=1
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local libnl_include
|
||||
if has_version ">=dev-libs/libnl-3.0"; then
|
||||
libnl_include=$($(tc-getPKG_CONFIG) --cflags libnl-3.0)
|
||||
else
|
||||
libnl_include=""
|
||||
fi
|
||||
emake -e \
|
||||
INCLUDE="-I.. -I. ${libnl_include}" \
|
||||
CC="$(tc-getCC)" \
|
||||
HAVE_NL=1 \
|
||||
STATIC=${STATIC} \
|
||||
POPT_LIB="$($(tc-getPKG_CONFIG) --libs popt)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
into /
|
||||
dosbin ipvsadm ipvsadm-save ipvsadm-restore
|
||||
|
||||
into /usr
|
||||
doman ipvsadm.8 ipvsadm-save.8 ipvsadm-restore.8
|
||||
|
||||
newinitd "${FILESDIR}"/ipvsadm-init ipvsadm
|
||||
keepdir /var/lib/ipvsadm
|
||||
|
||||
use static-libs && dolib.a libipvs/libipvs.a
|
||||
dolib.so libipvs/libipvs.so
|
||||
|
||||
insinto /usr/include/ipvs
|
||||
newins libipvs/libipvs.h ipvs.h
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
einfo "You will need a kernel that has ipvs patches to use LVS."
|
||||
}
|
@ -1,71 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit epatch linux-info toolchain-funcs
|
||||
|
||||
DESCRIPTION="utility to administer the IP virtual server services"
|
||||
HOMEPAGE="http://linuxvirtualserver.org/"
|
||||
SRC_URI="https://kernel.org/pub/linux/utils/kernel/ipvsadm/ipvsadm-${PV}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
|
||||
IUSE="static-libs"
|
||||
|
||||
RDEPEND=">=sys-libs/ncurses-5.2:*
|
||||
dev-libs/libnl:=
|
||||
>=dev-libs/popt-1.16"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
|
||||
pkg_pretend() {
|
||||
if kernel_is 2 4; then
|
||||
eerror "${P} supports only 2.6 series and later kernels, please try ${PN}-1.21 for 2.4 kernels"
|
||||
die "wrong kernel version"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
epatch "${FILESDIR}"/${PN}-1.27-buildsystem.patch
|
||||
epatch "${FILESDIR}"/${PN}-1.27-fix-daemon-state.patch
|
||||
use static-libs && export STATIC=1
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local libnl_include
|
||||
if has_version ">=dev-libs/libnl-3.0"; then
|
||||
libnl_include=$($(tc-getPKG_CONFIG) --cflags libnl-3.0)
|
||||
else
|
||||
libnl_include=""
|
||||
fi
|
||||
emake -e \
|
||||
INCLUDE="-I.. -I. ${libnl_include}" \
|
||||
CC="$(tc-getCC)" \
|
||||
HAVE_NL=1 \
|
||||
STATIC=${STATIC} \
|
||||
POPT_LIB="$($(tc-getPKG_CONFIG) --libs popt)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
into /
|
||||
dosbin ipvsadm ipvsadm-save ipvsadm-restore
|
||||
|
||||
into /usr
|
||||
doman ipvsadm.8 ipvsadm-save.8 ipvsadm-restore.8
|
||||
|
||||
newinitd "${FILESDIR}"/ipvsadm-init ipvsadm
|
||||
keepdir /var/lib/ipvsadm
|
||||
|
||||
use static-libs && dolib.a libipvs/libipvs.a
|
||||
dolib.so libipvs/libipvs.so
|
||||
|
||||
insinto /usr/include/ipvs
|
||||
newins libipvs/libipvs.h ipvs.h
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
einfo "You will need a kernel that has ipvs patches to use LVS."
|
||||
}
|
@ -1,70 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit epatch linux-info toolchain-funcs
|
||||
|
||||
DESCRIPTION="utility to administer the IP virtual server services"
|
||||
HOMEPAGE="http://linuxvirtualserver.org/"
|
||||
SRC_URI="https://kernel.org/pub/linux/utils/kernel/ipvsadm/ipvsadm-${PV}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
|
||||
IUSE="static-libs"
|
||||
|
||||
RDEPEND=">=sys-libs/ncurses-5.2:*
|
||||
dev-libs/libnl:=
|
||||
>=dev-libs/popt-1.16"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
|
||||
pkg_pretend() {
|
||||
if kernel_is 2 4; then
|
||||
eerror "${P} supports only 2.6 series and later kernels, please try ${PN}-1.21 for 2.4 kernels"
|
||||
die "wrong kernel version"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
epatch "${FILESDIR}"/${PN}-1.27-buildsystem.patch
|
||||
use static-libs && export STATIC=1
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local libnl_include
|
||||
if has_version ">=dev-libs/libnl-3.0"; then
|
||||
libnl_include=$($(tc-getPKG_CONFIG) --cflags libnl-3.0)
|
||||
else
|
||||
libnl_include=""
|
||||
fi
|
||||
emake -e \
|
||||
INCLUDE="-I.. -I. ${libnl_include}" \
|
||||
CC="$(tc-getCC)" \
|
||||
HAVE_NL=1 \
|
||||
STATIC=${STATIC} \
|
||||
POPT_LIB="$($(tc-getPKG_CONFIG) --libs popt)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
into /
|
||||
dosbin ipvsadm ipvsadm-save ipvsadm-restore
|
||||
|
||||
into /usr
|
||||
doman ipvsadm.8 ipvsadm-save.8 ipvsadm-restore.8
|
||||
|
||||
newinitd "${FILESDIR}"/ipvsadm-init ipvsadm
|
||||
keepdir /var/lib/ipvsadm
|
||||
|
||||
use static-libs && dolib.a libipvs/libipvs.a
|
||||
dolib.so libipvs/libipvs.so
|
||||
|
||||
insinto /usr/include/ipvs
|
||||
newins libipvs/libipvs.h ipvs.h
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
einfo "You will need a kernel that has ipvs patches to use LVS."
|
||||
}
|
@ -1 +1,3 @@
|
||||
DIST squashfs-tools-4.5_p20210914.tar.gz 252104 BLAKE2B f3e2e281c30464b3c2e9b2a3520979f90ccb83665ac61a2f68513b402d8ef658621fc75c782c2f42da20ddf51f884e2ccc6217df941790fd45b41f3f4e3ec970 SHA512 a814092be787bbcbd4115f87493a63b67caa364ad88fe5a3c82808083343cbcbc22b4617bd5c72d65d8abe2b11eb77853bcc55c11f5cd5dc3edf24bd27cbd135
|
||||
DIST squashfs-tools-4.5.1.tar.gz 270112 BLAKE2B cbd35daf582d284b021911bb754ed548763f2773e1bc02516ca18bab7034e352780c11eb7dfed1f047b70974dcfb716bb1a1d3729e5b25662203cfbf93553b73 SHA512 b3934ea1e26c7508110312711465644a6d9674b6b5332a7d011e191fa3c1d4b8be694214794a0f6005263d0f4e18bab96af2f7ed66a178f8e3bb3a781cd44896
|
||||
DIST squashfs-tools-4.6.1.tar.gz 286848 BLAKE2B 05e38681de219413573e8b1a7f36d2f7e87734f68a929ecdeb5ae6017076fbfd67b897448980e047689ef4b154d2dcd1a90162367a6a5babab45f1ef36f09325 SHA512 10e8a4b1e2327e062aef4f85860e76ebcd7a29e4c19e152ff7edec4a38316982b5bcfde4ab69da6bcb931258d264c2b6cb40cb5f635f9e6f6eba1ed5976267cb
|
||||
DIST squashfs-tools-4.6.tar.gz 286409 BLAKE2B 1c04a8f6149863667151e76b3c1ecfdd5e9a181b305bea694af1d4968ac361114c9e926b351dcee2647796a21bc8cfc55b3d95f020ad88c3388007460de26053 SHA512 3a9effb9a5cf46fbb9f393e58bd938874dc4121828b77c67d659117ee84643917998a8503d629f46f1eff1826f6d7ae59ac2d803a5cdc3cfb1006ef2b3abf8c8
|
||||
|
@ -6,6 +6,8 @@
|
||||
<name>Michał Górny</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="cpe">cpe:/a:squashfs-tools_project:squashfs-tools</remote-id>
|
||||
<remote-id type="github">plougher/squashfs-tools</remote-id>
|
||||
<remote-id type="sourceforge">squashfs</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -1,24 +1,18 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
inherit flag-o-matic toolchain-funcs
|
||||
|
||||
MY_COMMIT="19fcc9365dcdb2c22d232d42d11012940df64b7c"
|
||||
MY_P=${P/_p/-git.}
|
||||
DESCRIPTION="tools to create and extract Squashfs filesystems"
|
||||
HOMEPAGE="https://github.com/plougher/squashfs-tools/"
|
||||
SRC_URI="https://github.com/plougher/squashfs-tools/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
|
||||
S=${WORKDIR}/${PN}-${MY_COMMIT}
|
||||
|
||||
#SRC_URI="
|
||||
# https://github.com/plougher/squashfs-tools/archive/${PV/_p/-git.}.tar.gz
|
||||
# -> ${MY_P}.tar.gz"
|
||||
#S=${WORKDIR}/${MY_P}
|
||||
SRC_URI="
|
||||
https://github.com/plougher/squashfs-tools/archive/${PV}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
IUSE="debug lz4 lzma lzo xattr zstd"
|
||||
|
||||
RDEPEND="
|
||||
@ -56,4 +50,8 @@ src_install() {
|
||||
dobin squashfs-tools/{mksquashfs,unsquashfs}
|
||||
dodoc ACKNOWLEDGEMENTS CHANGES README*
|
||||
dodoc -r RELEASE-READMEs
|
||||
doman manpages/*.1
|
||||
|
||||
dosym unsquashfs /usr/bin/sqfscat
|
||||
dosym mksquashfs /usr/bin/sqfstar
|
||||
}
|
57
sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.6.1.ebuild
vendored
Normal file
57
sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.6.1.ebuild
vendored
Normal file
@ -0,0 +1,57 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic toolchain-funcs
|
||||
|
||||
DESCRIPTION="Tools to create and extract Squashfs filesystems"
|
||||
HOMEPAGE="https://github.com/plougher/squashfs-tools/"
|
||||
SRC_URI="
|
||||
https://github.com/plougher/squashfs-tools/archive/${PV}.tar.gz
|
||||
-> ${P}.tar.gz
|
||||
"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
IUSE="debug lz4 lzma lzo xattr zstd"
|
||||
|
||||
DEPEND="
|
||||
sys-libs/zlib
|
||||
lz4? ( app-arch/lz4 )
|
||||
lzma? ( app-arch/xz-utils )
|
||||
lzo? ( dev-libs/lzo )
|
||||
xattr? ( sys-apps/attr )
|
||||
zstd? ( app-arch/zstd )
|
||||
"
|
||||
RDEPEND=${DEPEND}
|
||||
|
||||
use10() {
|
||||
usex "${1}" 1 0
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# set up make command line variables in EMAKE_SQUASHFS_CONF
|
||||
local opts=(
|
||||
LZMA_XZ_SUPPORT=$(use10 lzma)
|
||||
LZO_SUPPORT=$(use10 lzo)
|
||||
LZ4_SUPPORT=$(use10 lz4)
|
||||
XATTR_SUPPORT=$(use10 xattr)
|
||||
XZ_SUPPORT=$(use10 lzma)
|
||||
ZSTD_SUPPORT=$(use10 zstd)
|
||||
)
|
||||
|
||||
tc-export CC
|
||||
use debug && append-cppflags -DSQUASHFS_TRACE
|
||||
emake "${opts[@]}" -C squashfs-tools
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin squashfs-tools/{mksquashfs,unsquashfs}
|
||||
dodoc ACKNOWLEDGEMENTS CHANGES README*
|
||||
doman manpages/*.1
|
||||
|
||||
dosym unsquashfs /usr/bin/sqfscat
|
||||
dosym mksquashfs /usr/bin/sqfstar
|
||||
}
|
57
sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.6.ebuild
vendored
Normal file
57
sdk_container/src/third_party/portage-stable/sys-fs/squashfs-tools/squashfs-tools-4.6.ebuild
vendored
Normal file
@ -0,0 +1,57 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic toolchain-funcs
|
||||
|
||||
DESCRIPTION="Tools to create and extract Squashfs filesystems"
|
||||
HOMEPAGE="https://github.com/plougher/squashfs-tools/"
|
||||
SRC_URI="
|
||||
https://github.com/plougher/squashfs-tools/archive/${PV}.tar.gz
|
||||
-> ${P}.tar.gz
|
||||
"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="debug lz4 lzma lzo xattr zstd"
|
||||
|
||||
DEPEND="
|
||||
sys-libs/zlib
|
||||
lz4? ( app-arch/lz4 )
|
||||
lzma? ( app-arch/xz-utils )
|
||||
lzo? ( dev-libs/lzo )
|
||||
xattr? ( sys-apps/attr )
|
||||
zstd? ( app-arch/zstd )
|
||||
"
|
||||
RDEPEND=${DEPEND}
|
||||
|
||||
use10() {
|
||||
usex "${1}" 1 0
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# set up make command line variables in EMAKE_SQUASHFS_CONF
|
||||
local opts=(
|
||||
LZMA_XZ_SUPPORT=$(use10 lzma)
|
||||
LZO_SUPPORT=$(use10 lzo)
|
||||
LZ4_SUPPORT=$(use10 lz4)
|
||||
XATTR_SUPPORT=$(use10 xattr)
|
||||
XZ_SUPPORT=$(use10 lzma)
|
||||
ZSTD_SUPPORT=$(use10 zstd)
|
||||
)
|
||||
|
||||
tc-export CC
|
||||
use debug && append-cppflags -DSQUASHFS_TRACE
|
||||
emake "${opts[@]}" -C squashfs-tools
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin squashfs-tools/{mksquashfs,unsquashfs}
|
||||
dodoc ACKNOWLEDGEMENTS CHANGES README*
|
||||
doman manpages/*.1
|
||||
|
||||
dosym unsquashfs /usr/bin/sqfscat
|
||||
dosym mksquashfs /usr/bin/sqfstar
|
||||
}
|
@ -1,3 +1 @@
|
||||
DIST installkernel-gentoo-1.tar.gz 2308 BLAKE2B 94d30463445cca4ccea8b00c61dd9f9f89ea4d6f2185e5c1355145300b001fbb624d2e06c9707ecc79ddcab8609725c34239e00b5d80bff22b10a8bc28132916 SHA512 ce33b1958bcec4ed63f812b00471a49ecb88d0149a4e5ebd283b412cc3eafc647477bf84ad21c066ef2602ee06a24ece08fbac85cc815fae91b0bb43d8db8013
|
||||
DIST installkernel-gentoo-2.tar.gz 2339 BLAKE2B 0c9999a4688fac9d27774bc30b7529ed01d9598a73283bd508265a9c694921d7a7974d0d9cda2e0c52fe247b7cbce53918c7b3271fdd01beb150097be0905aec SHA512 157e5c525c7eee1aa79027b847eb938700197abad087ec25548f6cfde227720936d1512070549993d6db0bb51dcef1bf00156f2316b415fa00e001ce1828e471
|
||||
DIST installkernel-gentoo-3.tar.gz 2340 BLAKE2B fe5b09ce1423be506907ff68aca953fba0c991f1fe94f91bf537b5e38a606f0f2e541758bc627e244b4dbf5960c02d13dff66fe6e4126f9cc8ddf4b0ca5980b1 SHA512 9ae377e95dedd7af2b75a9a4b572e3417e6bea0eb12fc20b837db800d0fea5f97021aac59504074822382579423b2f19a473f6080816ae9b50610a5479488724
|
||||
DIST installkernel-gentoo-7.tar.gz 2962 BLAKE2B 675a1e33470ef10a38cf880591cc78ce3bf92dad20feaea740cee7cdad657b9a9b30f53ff8078b610ed09e7ec306dc3b565856c92755e3aad2a5ef387df0522b SHA512 9944b20884a0fb252dced70d33963f24af221ffa41b99f14f5f3569c155c48a0e0762fc70ca103723cac35740f94fb2120712c7ba41a442e9f971251365a194e
|
||||
|
@ -1,25 +0,0 @@
|
||||
# Copyright 2019-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="Gentoo fork of installkernel script from debianutils"
|
||||
HOMEPAGE="https://github.com/mgorny/installkernel-gentoo"
|
||||
SRC_URI="https://github.com/mgorny/installkernel-gentoo/archive/v${PV}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
|
||||
|
||||
RDEPEND="
|
||||
>=sys-apps/debianutils-4.9-r1
|
||||
!<sys-apps/debianutils-4.9-r1[installkernel(+)]
|
||||
!sys-kernel/installkernel-systemd-boot"
|
||||
|
||||
src_install() {
|
||||
into /
|
||||
dosbin installkernel
|
||||
doman installkernel.8
|
||||
keepdir /etc/kernel/postinst.d
|
||||
}
|
@ -1,33 +0,0 @@
|
||||
# Copyright 2019-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="Gentoo fork of installkernel script from debianutils"
|
||||
HOMEPAGE="https://github.com/mgorny/installkernel-gentoo"
|
||||
SRC_URI="https://github.com/mgorny/installkernel-gentoo/archive/v${PV}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
|
||||
|
||||
RDEPEND="
|
||||
>=sys-apps/debianutils-4.9-r1
|
||||
!<sys-apps/debianutils-4.9-r1[installkernel(+)]
|
||||
!sys-kernel/installkernel-systemd-boot"
|
||||
|
||||
src_install() {
|
||||
into /
|
||||
dosbin installkernel
|
||||
doman installkernel.8
|
||||
keepdir /etc/kernel/postinst.d
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if has 1 ${REPLACING_VERSIONS}; then
|
||||
ewarn "In v2, the initramfs filename has changed to initramfs*.img, to match"
|
||||
ewarn "the default names used by dracut and genkernel-4. If your bootloader"
|
||||
ewarn "config uses the verbatim filename, please update it."
|
||||
fi
|
||||
}
|
@ -1,27 +1,33 @@
|
||||
# Copyright 2019-2021 Gentoo Authors
|
||||
# Copyright 2019-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Gentoo fork of installkernel script from debianutils"
|
||||
HOMEPAGE="https://github.com/mgorny/installkernel-gentoo"
|
||||
SRC_URI="https://github.com/mgorny/installkernel-gentoo/archive/v${PV}.tar.gz
|
||||
HOMEPAGE="https://github.com/projg2/installkernel-gentoo"
|
||||
SRC_URI="https://github.com/projg2/installkernel-gentoo/archive/v${PV}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
|
||||
IUSE="grub"
|
||||
|
||||
RDEPEND="
|
||||
>=sys-apps/debianutils-4.9-r1
|
||||
!<sys-apps/debianutils-4.9-r1[installkernel(+)]
|
||||
!sys-kernel/installkernel-systemd-boot"
|
||||
!sys-kernel/installkernel-systemd"
|
||||
|
||||
src_install() {
|
||||
into /
|
||||
dosbin installkernel
|
||||
doman installkernel.8
|
||||
keepdir /etc/kernel/postinst.d
|
||||
|
||||
if use grub; then
|
||||
exeinto /etc/kernel/postinst.d
|
||||
doexe hooks/91-grub-mkconfig.install
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
@ -5,4 +5,10 @@
|
||||
<email>dist-kernel@gentoo.org</email>
|
||||
<name>Distribution Kernel Project</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="grub">Re-generate grub.cfg on each kernel installation</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="github">projg2/installkernel-gentoo</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -1,2 +1 @@
|
||||
DIST efivar-37.tar.bz2 109431 BLAKE2B 813d477d31562b773f6e19f20e9e237b94beed437ce221771770e7d46ff0e657530285f035dc942cc20609185be92dc50319bfe8e10dee642c8bd88403ef6ffe SHA512 305a82ed103c7e3d8f723934019d552677c73558768dd5341f87d0364f5c60824d24f5a8e1bf90075e825908085083d4ecdccec5ac757fd38ee6ac8fea28c3e4
|
||||
DIST efivar-38.tar.bz2 320221 BLAKE2B 0b96f3d71ddc2246e6a11a5cd32af3d007823c4a283186a428c3f145cd74425a31bd22c4671ad1ab252a3c572991bb1698381cb8bdf51efcbebd62befdc6c070 SHA512 c2f17297c863ece134a9dd758d237fd2df8c8d072f87af1d0bf2bcf9acfc7a53c25597f03fd4fb8cc664b205743d4ffa0ef1b068d0f73c58fa573d40993f3155
|
||||
|
@ -1,42 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="Tools and library to manipulate EFI variables"
|
||||
HOMEPAGE="https://github.com/rhinstaller/efivar"
|
||||
SRC_URI="https://github.com/rhinstaller/efivar/releases/download/${PV}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/1"
|
||||
KEYWORDS="amd64 ~arm arm64 ~ia64 ~ppc64 ~riscv x86"
|
||||
|
||||
RDEPEND="dev-libs/popt"
|
||||
DEPEND="${RDEPEND}
|
||||
>=sys-kernel/linux-headers-3.18
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-37-ia64-relro.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e 's/-Werror //' gcc.specs || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export CC
|
||||
export CC_FOR_BUILD=$(tc-getBUILD_CC)
|
||||
tc-ld-disable-gold
|
||||
export libdir="/usr/$(get_libdir)"
|
||||
unset LIBS # Bug 562004
|
||||
|
||||
if [[ -n ${GCC_SPECS} ]]; then
|
||||
# The environment overrides the command line.
|
||||
GCC_SPECS+=":${S}/gcc.specs"
|
||||
fi
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
# Copyright 2014-2022 Gentoo Authors
|
||||
# Copyright 2014-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
@ -11,7 +11,7 @@ SRC_URI="https://github.com/rhinstaller/efivar/releases/download/${PV}/${P}.tar.
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/1"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc64 ~riscv ~x86"
|
||||
KEYWORDS="amd64 arm arm64 ~ia64 ~loong ppc64 ~riscv x86"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
@ -29,10 +29,18 @@ DEPEND="${RDEPEND}
|
||||
|
||||
src_prepare() {
|
||||
local PATCHES=(
|
||||
"${FILESDIR}"/efivar-38-ia64-relro.patch
|
||||
"${FILESDIR}"/efivar-38-march-native.patch
|
||||
"${FILESDIR}"/efivar-38-Makefile-dep.patch
|
||||
"${FILESDIR}"/efivar-38-binutils-2.36.patch
|
||||
"${FILESDIR}"/efivar-38-ld-locale.patch
|
||||
"${FILESDIR}"/efivar-38-glibc-2.36.patch
|
||||
"${FILESDIR}"/efivar-38-lld-fixes.patch
|
||||
"${FILESDIR}"/efivar-38-efisecdb-musl.patch
|
||||
"${FILESDIR}"/efivar-38-efisecdb-optarg.patch
|
||||
"${FILESDIR}"/efivar-38-64bit-off_t.patch
|
||||
|
||||
# Rejected upstream, keep this for ia64 support
|
||||
"${FILESDIR}"/efivar-38-ia64-relro.patch
|
||||
)
|
||||
default
|
||||
}
|
||||
|
@ -1,37 +0,0 @@
|
||||
https://github.com/rhboot/efivar/pull/164
|
||||
https://bugs.gentoo.org/749963
|
||||
|
||||
From: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Mon, 19 Oct 2020 19:05:01 +0100
|
||||
Subject: [PATCH] gcc.specs: drop --fatal-warnings from linker options (ia64
|
||||
compatibility)
|
||||
|
||||
```
|
||||
$ LANG=C make HOSTCC=x86_64-pc-linux-gnu-gcc CC=ia64-unknown-linux-gnu-gcc HOST_ARCH=ia64
|
||||
ia64-unknown-linux-gnu-gcc ... \
|
||||
-o libefivar.so ...
|
||||
/usr/libexec/gcc/ia64-unknown-linux-gnu/ld: warning: -z relro ignored
|
||||
collect2: error: ld returned 1 exit status
|
||||
make[1]: *** [/home/slyfox/dev/git/efivar/src/include/rules.mk:32: libefivar.so] Error 1
|
||||
```
|
||||
|
||||
ia64 (and a few others) binutils target does not support '-z relro' and always
|
||||
issues a warning. --fatal-warnings spec option turns the build into always failing one.
|
||||
|
||||
The change drops `--fatal-warnings` options from gcc.spec entirely.
|
||||
|
||||
Reported-by: Émeric Maschino
|
||||
Bug: https://bugs.gentoo.org/749963
|
||||
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
--- a/gcc.specs
|
||||
+++ b/gcc.specs
|
||||
@@ -11,7 +11,7 @@
|
||||
+ %(efivar_cpp_options) -Wmaybe-uninitialized -fno-merge-constants -fvisibility=hidden %{!r:%{!fpie:%{!fPIE:%{!fpic:%{!fPIC:%{!fno-pic:-fPIE}}}}}}
|
||||
|
||||
*self_spec:
|
||||
-+ %{!shared:%{!static:%{!r:-pie}}} %{static:-Wl,-no-fatal-warnings -Wl,-static -static -Wl,-z,relro,-z,now}
|
||||
++ %{!shared:%{!static:%{!r:-pie}}} %{static:-Wl,-static -static -Wl,-z,relro,-z,now}
|
||||
|
||||
*link:
|
||||
-+ %{!static:--fatal-warnings} --no-undefined-version --no-allow-shlib-undefined --add-needed -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
|
||||
++ --no-undefined-version --no-allow-shlib-undefined --add-needed -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
|
46
sdk_container/src/third_party/portage-stable/sys-libs/efivar/files/efivar-38-64bit-off_t.patch
vendored
Normal file
46
sdk_container/src/third_party/portage-stable/sys-libs/efivar/files/efivar-38-64bit-off_t.patch
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
https://bugs.gentoo.org/905930
|
||||
|
||||
From 914c686cc54b2405dab08bff77cd60827aab54b1 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Wed, 14 Dec 2022 16:55:51 -0800
|
||||
Subject: [PATCH] Use off_t instead of off64_t
|
||||
|
||||
Pass _FILE_OFFSET_BITS=64 to ensure 64bit off_t
|
||||
|
||||
This helps building efivar for 32bit arches on systems using musl C
|
||||
library. It works with glibc since _GNU_SOURCE defines
|
||||
_LARGEFILE64_SOURCE as well, this feature test macro enables the 64bit
|
||||
interfaces which were done as intermediate steps when transition to
|
||||
66-bit off_t was done as part olf LFS64 support.
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/error.c | 2 +-
|
||||
src/include/defaults.mk | 1 +
|
||||
2 files changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/error.c b/src/error.c
|
||||
index fcbba0d6..9530e22c 100644
|
||||
--- a/src/error.c
|
||||
+++ b/src/error.c
|
||||
@@ -191,7 +191,7 @@ dbglog_write(void *cookie, const char *buf, size_t size)
|
||||
}
|
||||
|
||||
static int
|
||||
-dbglog_seek(void *cookie UNUSED, off64_t *offset, int whence)
|
||||
+dbglog_seek(void *cookie UNUSED, off_t *offset, int whence)
|
||||
{
|
||||
FILE *log = efi_errlog ? efi_errlog : stderr;
|
||||
int rc;
|
||||
diff --git a/src/include/defaults.mk b/src/include/defaults.mk
|
||||
index 42bd3d6e..bb9c997f 100644
|
||||
--- a/src/include/defaults.mk
|
||||
+++ b/src/include/defaults.mk
|
||||
@@ -34,6 +34,7 @@ CPPFLAGS ?=
|
||||
override _CPPFLAGS := $(CPPFLAGS)
|
||||
override CPPFLAGS = $(_CPPFLAGS) -DLIBEFIVAR_VERSION=$(VERSION) \
|
||||
-D_GNU_SOURCE \
|
||||
+ -D_FILE_OFFSET_BITS=64 \
|
||||
-I$(TOPDIR)/src/include/
|
||||
CFLAGS ?= $(OPTIMIZE) $(DEBUGINFO) $(WARNINGS) $(ERRORS)
|
||||
CFLAGS_GCC ?= -specs=$(TOPDIR)/src/include/gcc.specs \
|
179
sdk_container/src/third_party/portage-stable/sys-libs/efivar/files/efivar-38-efisecdb-musl.patch
vendored
Normal file
179
sdk_container/src/third_party/portage-stable/sys-libs/efivar/files/efivar-38-efisecdb-musl.patch
vendored
Normal file
@ -0,0 +1,179 @@
|
||||
From cece3ffd5be2f8641eb694513f2b73e5eb97ffd3 Mon Sep 17 00:00:00 2001
|
||||
From: Natanael Copa <ncopa@alpinelinux.org>
|
||||
Date: Fri, 28 Jan 2022 12:13:30 +0100
|
||||
Subject: [PATCH] efisecdb: fix build with musl libc
|
||||
|
||||
Refactor code to use POSIX atexit(3) instead of the GNU specific
|
||||
on_exit(3).
|
||||
|
||||
Resolves: #197
|
||||
Resolves: #202
|
||||
Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
|
||||
---
|
||||
src/compiler.h | 2 --
|
||||
src/efisecdb.c | 68 +++++++++++++++++++-------------------------------
|
||||
2 files changed, 26 insertions(+), 44 deletions(-)
|
||||
|
||||
diff --git a/src/compiler.h b/src/compiler.h
|
||||
index e2f18f0b..d95fb014 100644
|
||||
--- a/src/compiler.h
|
||||
+++ b/src/compiler.h
|
||||
@@ -7,8 +7,6 @@
|
||||
#ifndef COMPILER_H_
|
||||
#define COMPILER_H_
|
||||
|
||||
-#include <sys/cdefs.h>
|
||||
-
|
||||
/* GCC version checking borrowed from glibc. */
|
||||
#if defined(__GNUC__) && defined(__GNUC_MINOR__)
|
||||
# define GNUC_PREREQ(maj,min) \
|
||||
diff --git a/src/efisecdb.c b/src/efisecdb.c
|
||||
index f8823737..6bd5ad90 100644
|
||||
--- a/src/efisecdb.c
|
||||
+++ b/src/efisecdb.c
|
||||
@@ -25,6 +25,10 @@
|
||||
extern char *optarg;
|
||||
extern int optind, opterr, optopt;
|
||||
|
||||
+static efi_secdb_t *secdb = NULL;
|
||||
+static list_t infiles;
|
||||
+static list_t actions;
|
||||
+
|
||||
struct hash_param {
|
||||
char *name;
|
||||
efi_secdb_type_t algorithm;
|
||||
@@ -187,12 +191,11 @@ add_action(list_t *list, action_type_t action_type, const efi_guid_t *owner,
|
||||
}
|
||||
|
||||
static void
|
||||
-free_actions(int status UNUSED, void *actionsp)
|
||||
+free_actions(void)
|
||||
{
|
||||
- list_t *actions = (list_t *)actionsp;
|
||||
list_t *pos, *tmp;
|
||||
|
||||
- for_each_action_safe(pos, tmp, actions) {
|
||||
+ for_each_action_safe(pos, tmp, &actions) {
|
||||
action_t *action = list_entry(pos, action_t, list);
|
||||
|
||||
list_del(&action->list);
|
||||
@@ -202,12 +205,11 @@ free_actions(int status UNUSED, void *actionsp)
|
||||
}
|
||||
|
||||
static void
|
||||
-free_infiles(int status UNUSED, void *infilesp)
|
||||
+free_infiles(void)
|
||||
{
|
||||
- list_t *infiles = (list_t *)infilesp;
|
||||
list_t *pos, *tmp;
|
||||
|
||||
- for_each_ptr_safe(pos, tmp, infiles) {
|
||||
+ for_each_ptr_safe(pos, tmp, &infiles) {
|
||||
ptrlist_t *entry = list_entry(pos, ptrlist_t, list);
|
||||
|
||||
list_del(&entry->list);
|
||||
@@ -216,27 +218,12 @@ free_infiles(int status UNUSED, void *infilesp)
|
||||
}
|
||||
|
||||
static void
|
||||
-maybe_free_secdb(int status UNUSED, void *voidp)
|
||||
+maybe_free_secdb(void)
|
||||
{
|
||||
- efi_secdb_t **secdbp = (efi_secdb_t **)voidp;
|
||||
-
|
||||
- if (secdbp == NULL || *secdbp == NULL)
|
||||
+ if (secdb == NULL)
|
||||
return;
|
||||
|
||||
- efi_secdb_free(*secdbp);
|
||||
-}
|
||||
-
|
||||
-static void
|
||||
-maybe_do_unlink(int status, void *filep)
|
||||
-{
|
||||
- char **file = (char **)filep;
|
||||
-
|
||||
- if (status == 0)
|
||||
- return;
|
||||
- if (file == NULL || *file == NULL)
|
||||
- return;
|
||||
-
|
||||
- unlink(*file);
|
||||
+ efi_secdb_free(secdb);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -323,15 +310,6 @@ parse_input_files(list_t *infiles, char **outfile, efi_secdb_t **secdb,
|
||||
return status;
|
||||
}
|
||||
|
||||
-/*
|
||||
- * These need to be static globals so that they're not on main's stack when
|
||||
- * on_exit() fires.
|
||||
- */
|
||||
-static efi_secdb_t *secdb = NULL;
|
||||
-static list_t infiles;
|
||||
-static list_t actions;
|
||||
-static char *outfile = NULL;
|
||||
-
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
@@ -351,6 +329,7 @@ main(int argc, char *argv[])
|
||||
bool do_sort_data = false;
|
||||
bool sort_descending = false;
|
||||
int status = 0;
|
||||
+ char *outfile = NULL;
|
||||
|
||||
const char sopts[] = ":aAc:dfg:h:i:Lo:rs:t:v?";
|
||||
const struct option lopts[] = {
|
||||
@@ -376,10 +355,9 @@ main(int argc, char *argv[])
|
||||
INIT_LIST_HEAD(&infiles);
|
||||
INIT_LIST_HEAD(&actions);
|
||||
|
||||
- on_exit(free_actions, &actions);
|
||||
- on_exit(free_infiles, &infiles);
|
||||
- on_exit(maybe_free_secdb, &secdb);
|
||||
- on_exit(maybe_do_unlink, &outfile);
|
||||
+ atexit(free_actions);
|
||||
+ atexit(free_infiles);
|
||||
+ atexit(maybe_free_secdb);
|
||||
|
||||
/*
|
||||
* parse the command line.
|
||||
@@ -587,24 +565,30 @@ main(int argc, char *argv[])
|
||||
outfd = open(outfile, flags, 0600);
|
||||
if (outfd < 0) {
|
||||
char *tmpoutfile = outfile;
|
||||
- if (errno == EEXIST)
|
||||
- outfile = NULL;
|
||||
+ if (errno != EEXIST)
|
||||
+ unlink(outfile);
|
||||
err(1, "could not open \"%s\"", tmpoutfile);
|
||||
}
|
||||
|
||||
rc = ftruncate(outfd, 0);
|
||||
- if (rc < 0)
|
||||
+ if (rc < 0) {
|
||||
+ unlink(outfile);
|
||||
err(1, "could not truncate output file \"%s\"", outfile);
|
||||
+ }
|
||||
|
||||
void *output;
|
||||
size_t size = 0;
|
||||
rc = efi_secdb_realize(secdb, &output, &size);
|
||||
- if (rc < 0)
|
||||
+ if (rc < 0) {
|
||||
+ unlink(outfile);
|
||||
secdb_err(1, "could not realize signature list");
|
||||
+ }
|
||||
|
||||
rc = write(outfd, output, size);
|
||||
- if (rc < 0)
|
||||
+ if (rc < 0) {
|
||||
+ unlink(outfile);
|
||||
err(1, "could not write signature list");
|
||||
+ }
|
||||
|
||||
close(outfd);
|
||||
xfree(output);
|
@ -0,0 +1,51 @@
|
||||
From df09b472419466987f2f30176dd00937e640aa9a Mon Sep 17 00:00:00 2001
|
||||
From: Natanael Copa <ncopa@alpinelinux.org>
|
||||
Date: Fri, 28 Jan 2022 12:29:00 +0100
|
||||
Subject: [PATCH] efisecdb: do not free optarg
|
||||
|
||||
The *outfile passed to parse_input_files can only be either set to
|
||||
optarg or be NULL. optarg should not be free'd and NULL does not need
|
||||
to.
|
||||
|
||||
Since we no longer use on_exit to unlink outfile we also don't need to
|
||||
set *outfile to NULL.
|
||||
|
||||
Fixes commit d91787035bc1 (efisecdb: add efisecdb)
|
||||
|
||||
Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
|
||||
---
|
||||
src/efisecdb.c | 7 ++-----
|
||||
1 file changed, 2 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/efisecdb.c b/src/efisecdb.c
|
||||
index 6bd5ad90..70fa1847 100644
|
||||
--- a/src/efisecdb.c
|
||||
+++ b/src/efisecdb.c
|
||||
@@ -255,8 +255,7 @@ list_guids(void)
|
||||
* failure.
|
||||
*/
|
||||
static int
|
||||
-parse_input_files(list_t *infiles, char **outfile, efi_secdb_t **secdb,
|
||||
- bool dump)
|
||||
+parse_input_files(list_t *infiles, efi_secdb_t **secdb, bool dump)
|
||||
{
|
||||
int status = 0;
|
||||
list_t *pos, *tmp;
|
||||
@@ -297,8 +296,6 @@ parse_input_files(list_t *infiles, char **outfile, efi_secdb_t **secdb,
|
||||
if (!dump)
|
||||
exit(1);
|
||||
status = 1;
|
||||
- xfree(*outfile);
|
||||
- *outfile = NULL;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -528,7 +525,7 @@ main(int argc, char *argv[])
|
||||
efi_secdb_set_bool(secdb, EFI_SECDB_SORT_DATA, do_sort_data);
|
||||
efi_secdb_set_bool(secdb, EFI_SECDB_SORT_DESCENDING, sort_descending);
|
||||
|
||||
- status = parse_input_files(&infiles, &outfile, &secdb, dump);
|
||||
+ status = parse_input_files(&infiles, &secdb, dump);
|
||||
if (status == 0) {
|
||||
for_each_action_safe(pos, tmp, &actions) {
|
||||
action_t *action = list_entry(pos, action_t, list);
|
46
sdk_container/src/third_party/portage-stable/sys-libs/efivar/files/efivar-38-glibc-2.36.patch
vendored
Normal file
46
sdk_container/src/third_party/portage-stable/sys-libs/efivar/files/efivar-38-glibc-2.36.patch
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
https://github.com/rhboot/efivar/commit/bc65d63ebf8fe6ac8a099ff15ca200986dba1565
|
||||
https://bugs.gentoo.org/863230
|
||||
|
||||
From: Robbie Harwood <rharwood@redhat.com>
|
||||
Date: Thu, 28 Jul 2022 16:11:24 -0400
|
||||
Subject: [PATCH] Fix glibc 2.36 build (mount.h conflicts)
|
||||
|
||||
glibc has decided that sys/mount.h and linux/mount.h are no longer
|
||||
usable at the same time. This broke the build, since linux/fs.h itself
|
||||
includes linux/mount.h. For now, fix the build by only including
|
||||
sys/mount.h where we need it.
|
||||
|
||||
See-also: https://sourceware.org/glibc/wiki/Release/2.36#Usage_of_.3Clinux.2Fmount.h.3E_and_.3Csys.2Fmount.h.3E
|
||||
Resolves: #227
|
||||
Signed-off-by: Robbie Harwood <rharwood@redhat.com>
|
||||
--- a/src/gpt.c
|
||||
+++ b/src/gpt.c
|
||||
@@ -17,6 +17,7 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
+#include <sys/mount.h>
|
||||
#include <sys/param.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/utsname.h>
|
||||
--- a/src/linux.c
|
||||
+++ b/src/linux.c
|
||||
@@ -20,6 +20,7 @@
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
#include <sys/ioctl.h>
|
||||
+#include <sys/mount.h>
|
||||
#include <sys/socket.h>
|
||||
#include <sys/sysmacros.h>
|
||||
#include <sys/types.h>
|
||||
--- a/src/util.h
|
||||
+++ b/src/util.h
|
||||
@@ -23,7 +23,6 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/ioctl.h>
|
||||
-#include <sys/mount.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include <tgmath.h>
|
||||
|
@ -23,6 +23,8 @@ The change drops `--fatal-warnings` option from gcc.spec entirely.
|
||||
|
||||
Rejected upstream in https://github.com/rhboot/efivar/pull/164.
|
||||
|
||||
[sam: add extra hunk to fix 38 build.]
|
||||
|
||||
Reported-by: Émeric Maschino
|
||||
Bug: https://bugs.gentoo.org/749963
|
||||
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
@ -38,8 +40,21 @@ index ef28e2b..4deead5 100644
|
||||
+ %{!shared:%{!static:%{!r:-pie}}} %{static:-Wl,-no-fatal-warnings -Wl,-static -static -Wl,-z,relro,-z,now} -grecord-gcc-switches
|
||||
|
||||
*link:
|
||||
-+ %{!static:--fatal-warnings} --no-undefined-version --no-allow-shlib-undefined --add-needed -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
|
||||
++ --no-undefined-version --no-allow-shlib-undefined --add-needed -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
|
||||
-+ %{!static:--fatal-warnings} --no-undefined-version --no-allow-shlib-undefined -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
|
||||
++ --no-undefined-version --no-allow-shlib-undefined -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
|
||||
--
|
||||
2.34.1
|
||||
|
||||
diff --git a/src/include/defaults.mk b/src/include/defaults.mk
|
||||
index 9024a3a..f5515fa 100644
|
||||
--- a/src/include/defaults.mk
|
||||
+++ b/src/include/defaults.mk
|
||||
@@ -58,7 +58,7 @@ override LDFLAGS = $(CFLAGS) -L. $(_LDFLAGS) $(_CCLDFLAGS) \
|
||||
-Wl,-z,now \
|
||||
-Wl,-z,muldefs \
|
||||
-Wl,-z,relro \
|
||||
- -Wl,--fatal-warnings \
|
||||
+ -Wl,--no-fatal-warnings \
|
||||
$(call family,LDFLAGS) $(call family,CCLDFLAGS) \
|
||||
$(call pkg-config-ccldflags)
|
||||
override CCLDFLAGS = $(LDFLAGS)
|
||||
|
30
sdk_container/src/third_party/portage-stable/sys-libs/efivar/files/efivar-38-ld-locale.patch
vendored
Normal file
30
sdk_container/src/third_party/portage-stable/sys-libs/efivar/files/efivar-38-ld-locale.patch
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
From 01de7438520868650bfaa1ef3e2bfaf00cacbcc6 Mon Sep 17 00:00:00 2001
|
||||
From: Mike Gilbert <floppym@gentoo.org>
|
||||
Date: Fri, 24 Jun 2022 17:00:33 -0400
|
||||
Subject: [PATCH] Set LC_ALL=C to force English output from ld
|
||||
|
||||
If the user has a different locale set, ld --version may not contain the
|
||||
string "GNU ld".
|
||||
|
||||
For example, in Italian, ld --version outputs "ld di GNU".
|
||||
|
||||
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
|
||||
---
|
||||
src/include/workarounds.mk | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/include/workarounds.mk b/src/include/workarounds.mk
|
||||
index 143e7902..b72fbaf6 100644
|
||||
--- a/src/include/workarounds.mk
|
||||
+++ b/src/include/workarounds.mk
|
||||
@@ -2,8 +2,8 @@
|
||||
#
|
||||
# workarounds.mk - workarounds for weird stuff behavior
|
||||
|
||||
-LD_FLAVOR := $(shell $(LD) --version | grep -E '^(LLD|GNU ld)'|sed 's/ .*//g')
|
||||
-LD_VERSION := $(shell $(LD) --version | grep -E '^(LLD|GNU ld)'|sed 's/.* //')
|
||||
+LD_FLAVOR := $(shell LC_ALL=C $(LD) --version | grep -E '^(LLD|GNU ld)'|sed 's/ .*//g')
|
||||
+LD_VERSION := $(shell LC_ALL=C $(LD) --version | grep -E '^(LLD|GNU ld)'|sed 's/.* //')
|
||||
# 2.35 is definitely broken and 2.36 seems to work
|
||||
LD_DASH_T := $(shell \
|
||||
if [ "x${LD_FLAVOR}" = xLLD ] ; then \
|
345
sdk_container/src/third_party/portage-stable/sys-libs/efivar/files/efivar-38-lld-fixes.patch
vendored
Normal file
345
sdk_container/src/third_party/portage-stable/sys-libs/efivar/files/efivar-38-lld-fixes.patch
vendored
Normal file
@ -0,0 +1,345 @@
|
||||
https://bugs.gentoo.org/831472
|
||||
|
||||
From b23aba1469de8bb7a115751f9cd294ad3aaa6680 Mon Sep 17 00:00:00 2001
|
||||
From: Ali Abdel-Qader <abdelqaderali@protonmail.com>
|
||||
Date: Tue, 31 May 2022 11:53:32 -0400
|
||||
Subject: [PATCH] Remove deprecated --add-needed linker flag
|
||||
|
||||
Resolves #204
|
||||
Signed-off-by: Ali Abdel-Qader <abdelqaderali@protonmail.com>
|
||||
---
|
||||
src/include/defaults.mk | 2 --
|
||||
src/include/gcc.specs | 2 +-
|
||||
2 files changed, 1 insertion(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/include/defaults.mk b/src/include/defaults.mk
|
||||
index b8cc590c..42bd3d6e 100644
|
||||
--- a/src/include/defaults.mk
|
||||
+++ b/src/include/defaults.mk
|
||||
@@ -51,7 +51,6 @@ LDFLAGS ?=
|
||||
override _CCLDFLAGS := $(CCLDFLAGS)
|
||||
override _LDFLAGS := $(LDFLAGS)
|
||||
override LDFLAGS = $(CFLAGS) -L. $(_LDFLAGS) $(_CCLDFLAGS) \
|
||||
- -Wl,--add-needed \
|
||||
-Wl,--build-id \
|
||||
-Wl,--no-allow-shlib-undefined \
|
||||
-Wl,--no-undefined-version \
|
||||
@@ -98,7 +97,6 @@ override _HOST_LDFLAGS := $(HOST_LDFLAGS)
|
||||
override _HOST_CCLDFLAGS := $(HOST_CCLDFLAGS)
|
||||
override HOST_LDFLAGS = $(HOST_CFLAGS) -L. \
|
||||
$(_HOST_LDFLAGS) $(_HOST_CCLDFLAGS) \
|
||||
- -Wl,--add-needed \
|
||||
-Wl,--build-id \
|
||||
-Wl,--no-allow-shlib-undefined \
|
||||
-Wl,-z,now \
|
||||
diff --git a/src/include/gcc.specs b/src/include/gcc.specs
|
||||
index ef28e2bb..d85e8658 100644
|
||||
--- a/src/include/gcc.specs
|
||||
+++ b/src/include/gcc.specs
|
||||
@@ -5,4 +5,4 @@
|
||||
+ %{!shared:%{!static:%{!r:-pie}}} %{static:-Wl,-no-fatal-warnings -Wl,-static -static -Wl,-z,relro,-z,now} -grecord-gcc-switches
|
||||
|
||||
*link:
|
||||
-+ %{!static:--fatal-warnings} --no-undefined-version --no-allow-shlib-undefined --add-needed -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
|
||||
++ %{!static:--fatal-warnings} --no-undefined-version --no-allow-shlib-undefined -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
|
||||
From 1f247260c9b4bd6fcda30f3e4cc358852aeb9e4d Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Tomasz=20Pawe=C5=82=20Gajc?= <tpgxyz@gmail.com>
|
||||
Date: Wed, 29 Jun 2022 21:44:29 +0200
|
||||
Subject: [PATCH] LLD: fix detection and remove not needed workarounds
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Tomasz Paweł Gajc <tpgxyz@gmail.com>
|
||||
---
|
||||
src/include/workarounds.mk | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/include/workarounds.mk b/src/include/workarounds.mk
|
||||
index b72fbaf6..57394edd 100644
|
||||
--- a/src/include/workarounds.mk
|
||||
+++ b/src/include/workarounds.mk
|
||||
@@ -2,12 +2,12 @@
|
||||
#
|
||||
# workarounds.mk - workarounds for weird stuff behavior
|
||||
|
||||
-LD_FLAVOR := $(shell LC_ALL=C $(LD) --version | grep -E '^(LLD|GNU ld)'|sed 's/ .*//g')
|
||||
-LD_VERSION := $(shell LC_ALL=C $(LD) --version | grep -E '^(LLD|GNU ld)'|sed 's/.* //')
|
||||
+LD_FLAVOR := $(shell LC_ALL=C $(LD) --version | grep -E '^((.* )?LLD|GNU ld)'|sed 's/.* LLD/LLD/;s/ .*//g')
|
||||
+LD_VERSION := $(shell LC_ALL=C $(LD) --version | grep -E '^((.* )?LLD|GNU ld)'|sed 's/.* LLD/LLD/;s/.* //')
|
||||
# 2.35 is definitely broken and 2.36 seems to work
|
||||
LD_DASH_T := $(shell \
|
||||
if [ "x${LD_FLAVOR}" = xLLD ] ; then \
|
||||
- echo '-T' ; \
|
||||
+ echo "" ; \
|
||||
elif [ "x${LD_FLAVOR}" = xGNU ] ; then \
|
||||
if echo "${LD_VERSION}" | grep -q -E '^2\.3[6789]|^2\.[456789]|^[3456789]|^[[:digit:]][[:digit:]]' ; then \
|
||||
echo '-T' ; \
|
||||
@@ -15,7 +15,7 @@ LD_DASH_T := $(shell \
|
||||
echo "" ; \
|
||||
fi ; \
|
||||
else \
|
||||
- echo "Your linker is not supported" ; \
|
||||
+ echo "Your linker ${LD_FLAVOR} version ${LD_VERSION} is not supported" ; \
|
||||
exit 1 ; \
|
||||
fi)
|
||||
|
||||
From cfd686de51494d3e34be896a91835657ccab37d4 Mon Sep 17 00:00:00 2001
|
||||
From: Nicholas Vinson <nvinson234@gmail.com>
|
||||
Date: Mon, 10 Oct 2022 14:22:36 -0400
|
||||
Subject: [PATCH] Revamp efi_well_known_* variable handling
|
||||
|
||||
The current implementation attempts to use the linker to create aliases
|
||||
for efi_well_known_guids and efi_well_known_names. It also tries to use
|
||||
the linker to generate the variables efi_well_known_guids_end and
|
||||
efi_well_known_names_end.
|
||||
|
||||
When building with clang, the generated linker result results in a
|
||||
broken libefivar.so that causes programs to segfault when linked against
|
||||
it. This change does away with linker script hacker and instead
|
||||
introduces pointers to store the locations of efi_well_known_guids_end
|
||||
and efi_well_known_names_end.
|
||||
|
||||
Additionally, efi_well_known_guids and efi_well_known_names are now
|
||||
created as pointers that point to the beginning of their respective
|
||||
arrays.
|
||||
|
||||
Signed-off-by: Nicholas Vinson <nvinson234@gmail.com>
|
||||
Fixes: #234
|
||||
---
|
||||
src/Makefile | 7 ++--
|
||||
src/include/rules.mk | 5 +--
|
||||
src/include/workarounds.mk | 24 -------------
|
||||
src/makeguids.c | 72 +++++++++++++-------------------------
|
||||
4 files changed, 27 insertions(+), 81 deletions(-)
|
||||
delete mode 100644 src/include/workarounds.mk
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index e04357a7..ec1eabe6 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -4,7 +4,6 @@ include $(TOPDIR)/src/include/deprecated.mk
|
||||
include $(TOPDIR)/src/include/version.mk
|
||||
include $(TOPDIR)/src/include/rules.mk
|
||||
include $(TOPDIR)/src/include/defaults.mk
|
||||
-include $(TOPDIR)/src/include/workarounds.mk
|
||||
|
||||
LIBTARGETS=libefivar.so libefiboot.so libefisec.so
|
||||
STATICLIBTARGETS=libefivar.a libefiboot.a libefisec.a
|
||||
@@ -30,7 +29,7 @@ EFISECDB_OBJECTS = $(patsubst %.S,%.o,$(patsubst %.c,%.o,$(EFISECDB_SOURCES)))
|
||||
GENERATED_SOURCES = include/efivar/efivar-guids.h guid-symbols.c
|
||||
MAKEGUIDS_SOURCES = makeguids.c util-makeguids.c
|
||||
MAKEGUIDS_OBJECTS = $(patsubst %.S,%.o,$(patsubst %.c,%.o,$(MAKEGUIDS_SOURCES)))
|
||||
-MAKEGUIDS_OUTPUT = $(GENERATED_SOURCES) guids.lds
|
||||
+MAKEGUIDS_OUTPUT = $(GENERATED_SOURCES)
|
||||
|
||||
util-makeguids.c : util.c
|
||||
cp util.c util-makeguids.c
|
||||
@@ -84,7 +83,7 @@ $(MAKEGUIDS_OUTPUT) : guids.txt
|
||||
if [ "$${missing}" != "no" ]; then \
|
||||
exit 1 ; \
|
||||
fi
|
||||
- ./makeguids $(LD_DASH_T) guids.txt guid-symbols.c include/efivar/efivar-guids.h guids.lds
|
||||
+ ./makeguids guids.txt guid-symbols.c include/efivar/efivar-guids.h
|
||||
|
||||
prep : makeguids $(GENERATED_SOURCES)
|
||||
|
||||
@@ -96,7 +95,6 @@ libefivar.a : $(patsubst %.o,%.static.o,$(LIBEFIVAR_OBJECTS))
|
||||
libefivar.so : $(LIBEFIVAR_OBJECTS)
|
||||
libefivar.so : | $(GENERATED_SOURCES) libefivar.map
|
||||
libefivar.so : LIBS=dl
|
||||
-libefivar.so : LDSCRIPTS=guids.lds
|
||||
libefivar.so : MAP=libefivar.map
|
||||
|
||||
efivar : $(EFIVAR_OBJECTS) | libefivar.so
|
||||
@@ -137,7 +135,6 @@ deps : $(ALL_SOURCES)
|
||||
clean :
|
||||
@rm -rfv *~ *.o *.a *.E *.so *.so.* *.pc *.bin .*.d *.map \
|
||||
makeguids guid-symbols.c include/efivar/efivar-guids.h \
|
||||
- guids.lds \
|
||||
$(TARGETS) $(STATICTARGETS)
|
||||
@# remove the deps files we used to create, as well.
|
||||
@rm -rfv .*.P .*.h.P *.S.P include/efivar/.*.h.P
|
||||
diff --git a/src/include/rules.mk b/src/include/rules.mk
|
||||
index f309f863..8d0b68a2 100644
|
||||
--- a/src/include/rules.mk
|
||||
+++ b/src/include/rules.mk
|
||||
@@ -3,7 +3,6 @@ default : all
|
||||
.PHONY: default all clean install test
|
||||
|
||||
include $(TOPDIR)/src/include/version.mk
|
||||
-include $(TOPDIR)/src/include/workarounds.mk
|
||||
|
||||
comma:= ,
|
||||
empty:=
|
||||
@@ -36,9 +35,7 @@ family = $(foreach FAMILY_SUFFIX,$(FAMILY_SUFFIXES),$($(1)_$(FAMILY_SUFFIX)))
|
||||
$(CCLD) $(CCLDFLAGS) $(CPPFLAGS) -o $@ $(sort $^) $(LDLIBS)
|
||||
|
||||
%.so :
|
||||
- $(CCLD) $(CCLDFLAGS) $(CPPFLAGS) $(SOFLAGS) \
|
||||
- $(foreach LDS,$(LDSCRIPTS),$(LD_DASH_T) $(LDS)) \
|
||||
- -o $@ $^ $(LDLIBS)
|
||||
+ $(CCLD) $(CCLDFLAGS) $(CPPFLAGS) $(SOFLAGS) -o $@ $^ $(LDLIBS)
|
||||
ln -vfs $@ $@.1
|
||||
|
||||
%.abixml : %.so
|
||||
diff --git a/src/include/workarounds.mk b/src/include/workarounds.mk
|
||||
deleted file mode 100644
|
||||
index 57394edd..00000000
|
||||
--- a/src/include/workarounds.mk
|
||||
+++ /dev/null
|
||||
@@ -1,24 +0,0 @@
|
||||
-# SPDX-License-Identifier: SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
-#
|
||||
-# workarounds.mk - workarounds for weird stuff behavior
|
||||
-
|
||||
-LD_FLAVOR := $(shell LC_ALL=C $(LD) --version | grep -E '^((.* )?LLD|GNU ld)'|sed 's/.* LLD/LLD/;s/ .*//g')
|
||||
-LD_VERSION := $(shell LC_ALL=C $(LD) --version | grep -E '^((.* )?LLD|GNU ld)'|sed 's/.* LLD/LLD/;s/.* //')
|
||||
-# 2.35 is definitely broken and 2.36 seems to work
|
||||
-LD_DASH_T := $(shell \
|
||||
- if [ "x${LD_FLAVOR}" = xLLD ] ; then \
|
||||
- echo "" ; \
|
||||
- elif [ "x${LD_FLAVOR}" = xGNU ] ; then \
|
||||
- if echo "${LD_VERSION}" | grep -q -E '^2\.3[6789]|^2\.[456789]|^[3456789]|^[[:digit:]][[:digit:]]' ; then \
|
||||
- echo '-T' ; \
|
||||
- else \
|
||||
- echo "" ; \
|
||||
- fi ; \
|
||||
- else \
|
||||
- echo "Your linker ${LD_FLAVOR} version ${LD_VERSION} is not supported" ; \
|
||||
- exit 1 ; \
|
||||
- fi)
|
||||
-
|
||||
-export LD_DASH_T
|
||||
-
|
||||
-# vim:ft=make
|
||||
diff --git a/src/makeguids.c b/src/makeguids.c
|
||||
index 376bffba..bfdee12e 100644
|
||||
--- a/src/makeguids.c
|
||||
+++ b/src/makeguids.c
|
||||
@@ -107,51 +107,46 @@ write_guidnames(FILE *out, const char *listname,
|
||||
gn->symbol, gn->name, gn->description);
|
||||
}
|
||||
fprintf(out, "};\n");
|
||||
+ fprintf(out, "const struct efivar_guidname\n"
|
||||
+ "\t__attribute__((__visibility__ (\"default\")))\n"
|
||||
+ "\t* const %s = %s_;\n", listname, listname);
|
||||
+ fprintf(out, "const struct efivar_guidname\n"
|
||||
+ "\t__attribute__((__visibility__ (\"default\")))\n"
|
||||
+ "\t* const %s_end = %s_\n\t+ %zd;\n",
|
||||
+ listname, listname, n - 1);
|
||||
}
|
||||
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
int rc;
|
||||
- int argstart = 0;
|
||||
- FILE *symout, *header, *ldsout;
|
||||
- int dash_t = 0;
|
||||
+ FILE *symout, *header;
|
||||
|
||||
- if (argc < 5) {
|
||||
+ if (argc < 4) {
|
||||
errx(1, "Not enough arguments.\n");
|
||||
- } else if (argc > 5 && !strcmp(argv[1],"-T")) {
|
||||
- argstart = 1;
|
||||
- dash_t = 1;
|
||||
- } else if (argc > 5) {
|
||||
+ } else if (argc > 4) {
|
||||
errx(1, "Too many arguments.\n");
|
||||
}
|
||||
|
||||
- symout = fopen(argv[argstart + 2], "w");
|
||||
+ symout = fopen(argv[2], "w");
|
||||
if (symout == NULL)
|
||||
- err(1, "could not open \"%s\"", argv[argstart + 2]);
|
||||
- rc = chmod(argv[argstart + 2], 0644);
|
||||
+ err(1, "could not open \"%s\"", argv[2]);
|
||||
+ rc = chmod(argv[2], 0644);
|
||||
if (rc < 0)
|
||||
- warn("chmod(%s, 0644)", argv[argstart + 2]);
|
||||
+ warn("chmod(%s, 0644)", argv[2]);
|
||||
|
||||
- header = fopen(argv[argstart + 3], "w");
|
||||
+ header = fopen(argv[3], "w");
|
||||
if (header == NULL)
|
||||
- err(1, "could not open \"%s\"", argv[argstart + 3]);
|
||||
- rc = chmod(argv[argstart + 3], 0644);
|
||||
- if (rc < 0)
|
||||
- warn("chmod(%s, 0644)", argv[argstart + 3]);
|
||||
-
|
||||
- ldsout = fopen(argv[argstart + 4], "w");
|
||||
- if (ldsout == NULL)
|
||||
- err(1, "could not open \"%s\"", argv[argstart + 4]);
|
||||
- rc = chmod(argv[argstart + 4], 0644);
|
||||
+ err(1, "could not open \"%s\"", argv[3]);
|
||||
+ rc = chmod(argv[3], 0644);
|
||||
if (rc < 0)
|
||||
- warn("chmod(%s, 0644)", argv[argstart + 4]);
|
||||
+ warn("chmod(%s, 0644)", argv[3]);
|
||||
|
||||
struct guidname_index *guidnames = NULL;
|
||||
|
||||
- rc = read_guids_at(AT_FDCWD, argv[argstart + 1], &guidnames);
|
||||
+ rc = read_guids_at(AT_FDCWD, argv[1], &guidnames);
|
||||
if (rc < 0)
|
||||
- err(1, "could not read \"%s\"", argv[argstart + 1]);
|
||||
+ err(1, "could not read \"%s\"", argv[1]);
|
||||
|
||||
struct efivar_guidname *outbuf;
|
||||
|
||||
@@ -243,12 +238,11 @@ struct efivar_guidname {\n\
|
||||
fprintf(header,
|
||||
"extern const struct efivar_guidname\n"
|
||||
"\t__attribute__((__visibility__ (\"default\")))\n"
|
||||
- "\tefi_well_known_guids[%d];\n",
|
||||
- i);
|
||||
+ "\t* const efi_well_known_guids;\n");
|
||||
fprintf(header,
|
||||
"extern const struct efivar_guidname\n"
|
||||
"\t__attribute__((__visibility__ (\"default\")))\n"
|
||||
- "\tefi_well_known_guids_end;\n");
|
||||
+ "\t* const efi_well_known_guids_end;\n");
|
||||
fprintf(header,
|
||||
"extern const uint64_t\n"
|
||||
"\t__attribute__((__visibility__ (\"default\")))\n"
|
||||
@@ -256,12 +250,11 @@ struct efivar_guidname {\n\
|
||||
fprintf(header,
|
||||
"extern const struct efivar_guidname\n"
|
||||
"\t__attribute__((__visibility__ (\"default\")))\n"
|
||||
- "\tefi_well_known_names[%d];\n",
|
||||
- i);
|
||||
+ "\t* const efi_well_known_names;\n");
|
||||
fprintf(header,
|
||||
"extern const struct efivar_guidname\n"
|
||||
"\t__attribute__((__visibility__ (\"default\")))\n"
|
||||
- "\tefi_well_known_names_end;\n");
|
||||
+ "\t* const efi_well_known_names_end;\n");
|
||||
fprintf(header,
|
||||
"extern const uint64_t\n"
|
||||
"\t__attribute__((__visibility__ (\"default\")))\n"
|
||||
@@ -310,23 +303,6 @@ struct efivar_guidname {\n\
|
||||
|
||||
fclose(symout);
|
||||
|
||||
- fprintf(ldsout,
|
||||
- "SECTIONS\n"
|
||||
- "{\n"
|
||||
- " .data :\n"
|
||||
- " {\n"
|
||||
- " efi_well_known_guids = efi_well_known_guids_;\n"
|
||||
- " efi_well_known_guids_end = efi_well_known_guids_ + %zd;\n"
|
||||
- " efi_well_known_names = efi_well_known_names_;\n"
|
||||
- " efi_well_known_names_end = efi_well_known_names_ + %zd;\n"
|
||||
- " }\n"
|
||||
- "}%s;\n",
|
||||
- (line - 1) * sizeof(struct efivar_guidname),
|
||||
- (line - 1) * sizeof(struct efivar_guidname),
|
||||
- dash_t ? " INSERT AFTER .data" : "");
|
||||
-
|
||||
- fclose(ldsout);
|
||||
-
|
||||
free(guidnames->strtab);
|
||||
free(guidnames);
|
||||
|
@ -1,2 +1,5 @@
|
||||
DIST libunwind-1.5.0.tar.gz 878355 BLAKE2B ee35441289926ac22a58bedb9f831d8e13bacd663a99b3ce25eed229f25f0423bbbd90e09e3d62b003518d7a620aa6d15b0dd5b93632736a89fa0667b35d5fc2 SHA512 1df20ca7a8cee2f2e61294fa9b677e88fec52e9d5a329f88d05c2671c69fa462f6c18808c97ca9ff664ef57292537a844f00b18d142b1938c9da701ca95a4bab
|
||||
DIST libunwind-1.6.0-rc2.tar.gz 900974 BLAKE2B bbf88b6eb0ddf1371a8d69904e7763d2b2892641f88ed985f342962de7b2d19b6201f84422252aa5ca3d6beed7b3af0e2fe1fdb603497dbe68215ebc94942074 SHA512 7b3933c4693595a85182cc11d24527c5ccda3c3af115a3947bdc9877ecb4a77659a2196f559112868b36cd2cdc5623cabef68ad519fd4017c510ee375b97cbe9
|
||||
DIST libunwind-1.6.2-docs.tar.xz 25372 BLAKE2B d16562b29c49070f0cd6ad9211c7c3283b527bd88677d9ce50b15f27254bac504ea79b807e01f4f2bdb05649ff8980f94346ef9737bf5b5bd7c313e547222f10 SHA512 71bcb781cc37ccbef7b349225b1b3b4cd6ba4ce5a48d8478cea17f8245614b672d8e14b5a088e2d998ea717670a371925d4fbe407dde636611f7c2f2901065d8
|
||||
DIST libunwind-1.6.2-loong.patch.xz 122756 BLAKE2B 1d369d18e71c4b9faa79a31a917a0f42a7bb394acd3bf8dc9ef181f2ca55bee04bef070c57ea04853b756efd561cb60409770b1f6fa9095d0e14565eb0bfc621 SHA512 46c8a6022dbf099965cf121d91691aae0a38fb31901730f47f712a7078b323e04f278e6751a7d169ed7e87792f321b15471b253668541598b82edb6626b9518f
|
||||
DIST libunwind-1.6.2.tar.gz 901392 BLAKE2B 3d0313f7e92cbc3e1a84ad3831a5170f21cdf772f1697ca0a59dea63cdd47da382e9f1fd77325d9ff8bcd47559a425dc883a820c646c628cd00faed82cb0f83f SHA512 1d17dfb14f99a894a6cda256caf9ec481c14068aaf8f3a85fa3befa7c7cca7fca0f544a91a3a7c2f2fc55bab19b06a67ca79f55ac9081151d94478c7f611f8f7
|
||||
DIST libunwind-1.7.1-docs.tar.xz 27248 BLAKE2B 0905f49ce72e6cafbb185828a4adf7eb5a88ede335104b1b0679e66199079e3dad9d83815d10a864b4480d88abd82b73bb71181962b1fea39ec41f534d78d549 SHA512 d786572e7fbd5ef7852712f592bd17d4110951083991c5ffcff2bb4ae91e4519b42743f848fe7f2cc9f72d8a0240531ec3d27806972c2c309d06a9048284b97b
|
||||
DIST libunwind-1.7.2.tar.gz 912590 BLAKE2B 519570a02d06ce4a174ca226941e493499054112de1c92938434e9fb56fabc8446f699a886ea8beee672ac5e28acd03d16169257a43e2ee1bab084fb331ef4cf SHA512 903f7e26c7d4c22e6ef4fe8954ca0f153fdf346cec40e1e8f7ab966d251110f4deb0a84d1fd150aee194ed966b5c1e01ee27c821cd043859852da33a94faae1f
|
||||
|
@ -1,16 +0,0 @@
|
||||
https://bugs.gentoo.org/586092
|
||||
|
||||
this might not be correct, but at least it builds, and doesn't crash
|
||||
|
||||
--- a/src/coredump/_UCD_access_reg_linux.c
|
||||
+++ b/src/coredump/_UCD_access_reg_linux.c
|
||||
@@ -51,6 +51,9 @@ _UCD_access_reg (unw_addr_space_t as,
|
||||
#elif defined(UNW_TARGET_TILEGX)
|
||||
if (regnum < 0 || regnum > UNW_TILEGX_CFA)
|
||||
goto badreg;
|
||||
+#elif defined(UNW_TARGET_IA64) || defined(UNW_TARGET_HPPA) || defined(UNW_TARGET_PPC32) || defined(UNW_TARGET_PPC64)
|
||||
+ if (regnum < 0 || regnum >= ARRAY_SIZE(ui->prstatus->pr_reg))
|
||||
+ goto badreg;
|
||||
#else
|
||||
#if defined(UNW_TARGET_MIPS)
|
||||
static const uint8_t remap_regs[] =
|
@ -1,93 +0,0 @@
|
||||
Original libunwind release is missing a few ia64-specific files in tarball.
|
||||
diff --git a/src/ia64/mk_Gcursor_i.c b/src/ia64/mk_Gcursor_i.c
|
||||
new file mode 100644
|
||||
index 0000000..67b14d5
|
||||
--- /dev/null
|
||||
+++ b/src/ia64/mk_Gcursor_i.c
|
||||
@@ -0,0 +1,65 @@
|
||||
+/* libunwind - a platform-independent unwind library
|
||||
+ Copyright (C) 2003 Hewlett-Packard Co
|
||||
+ Contributed by David Mosberger-Tang <davidm@hpl.hp.com>
|
||||
+
|
||||
+This file is part of libunwind.
|
||||
+
|
||||
+Permission is hereby granted, free of charge, to any person obtaining
|
||||
+a copy of this software and associated documentation files (the
|
||||
+"Software"), to deal in the Software without restriction, including
|
||||
+without limitation the rights to use, copy, modify, merge, publish,
|
||||
+distribute, sublicense, and/or sell copies of the Software, and to
|
||||
+permit persons to whom the Software is furnished to do so, subject to
|
||||
+the following conditions:
|
||||
+
|
||||
+The above copyright notice and this permission notice shall be
|
||||
+included in all copies or substantial portions of the Software.
|
||||
+
|
||||
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
+
|
||||
+/* Utility to generate cursor_i.h. */
|
||||
+
|
||||
+#include "libunwind_i.h"
|
||||
+
|
||||
+#ifdef offsetof
|
||||
+# undef offsetof
|
||||
+#endif
|
||||
+
|
||||
+#define offsetof(type,field) ((char *) &((type *) 0)->field - (char *) 0)
|
||||
+
|
||||
+#define OFFSET(sym, offset) \
|
||||
+ asm volatile("\n->" #sym " %0" : : "i" (offset))
|
||||
+
|
||||
+int
|
||||
+main (void)
|
||||
+{
|
||||
+ OFFSET("IP_OFF", offsetof (struct cursor, ip));
|
||||
+ OFFSET("PR_OFF", offsetof (struct cursor, pr));
|
||||
+ OFFSET("BSP_OFF", offsetof (struct cursor, bsp));
|
||||
+ OFFSET("PSP_OFF", offsetof (struct cursor, psp));
|
||||
+ OFFSET("PFS_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_PFS]));
|
||||
+ OFFSET("RNAT_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_RNAT]));
|
||||
+ OFFSET("UNAT_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_UNAT]));
|
||||
+ OFFSET("LC_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_LC]));
|
||||
+ OFFSET("FPSR_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_FPSR]));
|
||||
+ OFFSET("B1_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B1]));
|
||||
+ OFFSET("B2_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B2]));
|
||||
+ OFFSET("B3_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B3]));
|
||||
+ OFFSET("B4_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B4]));
|
||||
+ OFFSET("B5_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B5]));
|
||||
+ OFFSET("F2_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F2]));
|
||||
+ OFFSET("F3_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F3]));
|
||||
+ OFFSET("F4_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F4]));
|
||||
+ OFFSET("F5_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F5]));
|
||||
+ OFFSET("FR_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F16]));
|
||||
+ OFFSET("LOC_SIZE",
|
||||
+ (offsetof (struct cursor, loc[1]) - offsetof (struct cursor, loc[0])));
|
||||
+ OFFSET("SIGCONTEXT_ADDR_OFF", offsetof (struct cursor, sigcontext_addr));
|
||||
+ return 0;
|
||||
+}
|
||||
diff --git a/src/ia64/mk_Lcursor_i.c b/src/ia64/mk_Lcursor_i.c
|
||||
new file mode 100644
|
||||
index 0000000..aee2e7e
|
||||
--- /dev/null
|
||||
+++ b/src/ia64/mk_Lcursor_i.c
|
||||
@@ -0,0 +1,2 @@
|
||||
+#define UNW_LOCAL_ONLY
|
||||
+#include "mk_Gcursor_i.c"
|
||||
diff --git a/src/ia64/mk_cursor_i b/src/ia64/mk_cursor_i
|
||||
new file mode 100755
|
||||
index 0000000..9211f91
|
||||
--- /dev/null
|
||||
+++ b/src/ia64/mk_cursor_i
|
||||
@@ -0,0 +1,7 @@
|
||||
+#!/bin/sh
|
||||
+test -z "$1" && exit 1
|
||||
+echo "/* GENERATED */"
|
||||
+echo "#ifndef cursor_i_h"
|
||||
+echo "#define cursor_i_h"
|
||||
+sed -ne 's/^->"\(\S*\)" \(\d*\)/#define \1 \2/p' < $1 || exit $?
|
||||
+echo "#endif"
|
@ -1,34 +0,0 @@
|
||||
Fix build failure on ia64.
|
||||
coredump/_UPT_get_dyn_info_list_addr.c
|
||||
is almost identical to
|
||||
ptrace/_UPT_get_dyn_info_list_addr.c
|
||||
It's clearly an __ia64 implementation copy.
|
||||
diff --git a/src/coredump/_UPT_get_dyn_info_list_addr.c b/src/coredump/_UPT_get_dyn_info_list_addr.c
|
||||
index 0d11905..176b146 100644
|
||||
--- a/src/coredump/_UPT_get_dyn_info_list_addr.c
|
||||
+++ b/src/coredump/_UPT_get_dyn_info_list_addr.c
|
||||
@@ -31,2 +31,3 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
# include "os-linux.h"
|
||||
+# include "../ptrace/_UPT_internal.h"
|
||||
|
||||
@@ -40,3 +41,2 @@ get_list_addr (unw_addr_space_t as, unw_word_t *dil_addr, void *arg,
|
||||
char path[PATH_MAX];
|
||||
- unw_dyn_info_t *di;
|
||||
unw_word_t res;
|
||||
@@ -50,5 +50,5 @@ get_list_addr (unw_addr_space_t as, unw_word_t *dil_addr, void *arg,
|
||||
|
||||
- invalidate_edi (&ui->edi);
|
||||
+ invalidate_edi(&ui->edi);
|
||||
|
||||
- if (elf_map_image (&ui->ei, path) < 0)
|
||||
+ if (elf_map_image (&ui->edi.ei, path) < 0)
|
||||
/* ignore unmappable stuff like "/SYSV00001b58 (deleted)" */
|
||||
@@ -58,6 +58,5 @@ get_list_addr (unw_addr_space_t as, unw_word_t *dil_addr, void *arg,
|
||||
|
||||
- di = tdep_find_unwind_table (&ui->edi, as, path, lo, off);
|
||||
- if (di)
|
||||
+ if (tdep_find_unwind_table (&ui->edi, as, path, lo, off, 0) > 0)
|
||||
{
|
||||
- res = _Uia64_find_dyn_list (as, di, arg);
|
||||
+ res = _Uia64_find_dyn_list (as, &ui->edi.di_cache, arg);
|
||||
if (res && count++ == 0)
|
@ -1,51 +0,0 @@
|
||||
From 0f3f41a86842f2b19aa07af5242cb775ef9b20d3 Mon Sep 17 00:00:00 2001
|
||||
From: "Jory A. Pratt" <anarchy@gentoo.org>
|
||||
Date: Sat, 30 Jun 2018 22:44:22 -0500
|
||||
Subject: [PATCH] Only include execinfo.h where avaliable
|
||||
|
||||
Signed-off-by: Jory A. Pratt <anarchy@gentoo.org>
|
||||
---
|
||||
tests/test-coredump-unwind.c | 8 ++++++--
|
||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/tests/test-coredump-unwind.c b/tests/test-coredump-unwind.c
|
||||
index 5254708..33f92b0 100644
|
||||
--- a/tests/test-coredump-unwind.c
|
||||
+++ b/tests/test-coredump-unwind.c
|
||||
@@ -57,7 +57,9 @@
|
||||
#include <grp.h>
|
||||
|
||||
/* For SIGSEGV handler code */
|
||||
+#if HAVE_EXECINFO_H
|
||||
#include <execinfo.h>
|
||||
+#endif
|
||||
#include <sys/ucontext.h>
|
||||
|
||||
#include <libunwind-coredump.h>
|
||||
@@ -202,7 +204,7 @@ void die_out_of_memory(void)
|
||||
/* End of utility logging functions */
|
||||
|
||||
|
||||
-
|
||||
+#if HAVE_EXECINFO_H
|
||||
static
|
||||
void handle_sigsegv(int sig, siginfo_t *info, void *ucontext)
|
||||
{
|
||||
@@ -249,12 +251,14 @@ void handle_sigsegv(int sig, siginfo_t *info, void *ucontext)
|
||||
|
||||
_exit(1);
|
||||
}
|
||||
-
|
||||
+#endif
|
||||
static void install_sigsegv_handler(void)
|
||||
{
|
||||
struct sigaction sa;
|
||||
memset(&sa, 0, sizeof(sa));
|
||||
+#if HAVE_EXECINFO_H
|
||||
sa.sa_sigaction = handle_sigsegv;
|
||||
+#endif
|
||||
sa.sa_flags = SA_SIGINFO;
|
||||
sigaction(SIGSEGV, &sa, NULL);
|
||||
sigaction(SIGILL, &sa, NULL);
|
||||
--
|
||||
2.18.0
|
@ -1,17 +0,0 @@
|
||||
https://bugs.gentoo.org/614374
|
||||
|
||||
From: kasperk81 <83082615+kasperk81@users.noreply.github.com>
|
||||
Date: Wed, 30 Jun 2021 23:23:22 +0000
|
||||
Subject: [PATCH] Fix -mx32 compilation error
|
||||
|
||||
--- a/src/x86_64/Gos-linux.c
|
||||
+++ b/src/x86_64/Gos-linux.c
|
||||
@@ -149,7 +149,7 @@ x86_64_sigreturn (unw_cursor_t *cursor)
|
||||
__asm__ __volatile__ ("mov %0, %%rsp;"
|
||||
"mov %1, %%rax;"
|
||||
"syscall"
|
||||
- :: "r"(sc), "i"(SYS_rt_sigreturn)
|
||||
+ :: "r"((uint64_t)sc), "i"(SYS_rt_sigreturn)
|
||||
: "memory");
|
||||
abort();
|
||||
}
|
@ -1,108 +0,0 @@
|
||||
# Copyright 2005-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
inherit autotools flag-o-matic libtool multilib-minimal
|
||||
|
||||
DESCRIPTION="Portable and efficient API to determine the call-chain of a program"
|
||||
HOMEPAGE="https://savannah.nongnu.org/projects/libunwind"
|
||||
SRC_URI="mirror://nongnu/libunwind/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/8" # libunwind.so.8
|
||||
KEYWORDS="amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 -riscv -sparc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="debug debug-frame doc libatomic lzma static-libs zlib"
|
||||
|
||||
RESTRICT="test" # some tests are broken (toolchain version dependent, rely on external binaries)
|
||||
|
||||
# We just use the header from libatomic.
|
||||
RDEPEND="
|
||||
lzma? ( app-arch/xz-utils[static-libs?,${MULTILIB_USEDEP}] )
|
||||
zlib? ( sys-libs/zlib[static-libs?,${MULTILIB_USEDEP}] )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
libatomic? ( dev-libs/libatomic_ops[${MULTILIB_USEDEP}] )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/libunwind.h
|
||||
|
||||
# see libunwind.h for the full list of arch-specific headers
|
||||
/usr/include/libunwind-aarch64.h
|
||||
/usr/include/libunwind-arm.h
|
||||
/usr/include/libunwind-hppa.h
|
||||
/usr/include/libunwind-ia64.h
|
||||
/usr/include/libunwind-mips.h
|
||||
/usr/include/libunwind-ppc32.h
|
||||
/usr/include/libunwind-ppc64.h
|
||||
/usr/include/libunwind-sh.h
|
||||
/usr/include/libunwind-tilegx.h
|
||||
/usr/include/libunwind-x86.h
|
||||
/usr/include/libunwind-x86_64.h
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.2-coredump-regs.patch #586092
|
||||
"${FILESDIR}"/${PN}-1.2-ia64-ptrace-coredump.patch
|
||||
"${FILESDIR}"/${PN}-1.2-ia64-missing.patch
|
||||
"${FILESDIR}"/${PN}-1.5.0-x32.patch
|
||||
# needs refresh:
|
||||
#"${FILESDIR}"/${PN}-1.2.1-only-include-execinfo_h-if-avaliable.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
chmod +x src/ia64/mk_cursor_i || die
|
||||
# Since we have tests disabled via RESTRICT, disable building in the subdir
|
||||
# entirely. This works around some build errors too. #484846
|
||||
sed -i -e '/^SUBDIRS/s:tests::' Makefile.in || die
|
||||
|
||||
elibtoolize
|
||||
eautoreconf
|
||||
|
||||
# Let's wait for proper fix upstream in https://github.com/libunwind/libunwind/issues/154
|
||||
# Meanwhile workaround for gcc-10 with -fcommon, bug #706560
|
||||
append-cflags -fcommon
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# --enable-cxx-exceptions: always enable it, headers provide the interface
|
||||
# and on some archs it is disabled by default causing a mismatch between the
|
||||
# API and the ABI, bug #418253
|
||||
# conservative-checks: validate memory addresses before use; as of 1.0.1,
|
||||
# only x86_64 supports this, yet may be useful for debugging, couple it with
|
||||
# debug useflag.
|
||||
ECONF_SOURCE="${S}" \
|
||||
ac_cv_header_atomic_ops_h=$(usex libatomic) \
|
||||
econf \
|
||||
--enable-cxx-exceptions \
|
||||
--enable-coredump \
|
||||
--enable-ptrace \
|
||||
--enable-setjmp \
|
||||
$(use_enable debug-frame) \
|
||||
$(use_enable doc documentation) \
|
||||
$(use_enable lzma minidebuginfo) \
|
||||
$(use_enable static-libs static) \
|
||||
$(use_enable zlib zlibdebuginfo) \
|
||||
$(use_enable debug conservative_checks) \
|
||||
$(use_enable debug)
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
# Bug 586208
|
||||
CCACHE_NODIRECT=1 default
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# Explicitly allow parallel build of tests.
|
||||
# Sandbox causes some tests to freak out.
|
||||
SANDBOX_ON=0 emake check
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
find "${D}" -name "*.la" -type f -delete || die
|
||||
}
|
@ -1,102 +0,0 @@
|
||||
# Copyright 2005-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
inherit autotools flag-o-matic libtool multilib-minimal
|
||||
|
||||
DESCRIPTION="Portable and efficient API to determine the call-chain of a program"
|
||||
HOMEPAGE="https://savannah.nongnu.org/projects/libunwind"
|
||||
SRC_URI="mirror://nongnu/libunwind/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/8" # libunwind.so.8
|
||||
#KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv -sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
KEYWORDS="~riscv"
|
||||
IUSE="debug debug-frame doc libatomic lzma static-libs zlib"
|
||||
|
||||
RESTRICT="test" # some tests are broken (toolchain version dependent, rely on external binaries)
|
||||
|
||||
# We just use the header from libatomic.
|
||||
RDEPEND="
|
||||
lzma? ( app-arch/xz-utils[static-libs?,${MULTILIB_USEDEP}] )
|
||||
zlib? ( sys-libs/zlib[static-libs?,${MULTILIB_USEDEP}] )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
libatomic? ( dev-libs/libatomic_ops[${MULTILIB_USEDEP}] )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/libunwind.h
|
||||
|
||||
# see libunwind.h for the full list of arch-specific headers
|
||||
/usr/include/libunwind-aarch64.h
|
||||
/usr/include/libunwind-arm.h
|
||||
/usr/include/libunwind-hppa.h
|
||||
/usr/include/libunwind-ia64.h
|
||||
/usr/include/libunwind-mips.h
|
||||
/usr/include/libunwind-ppc32.h
|
||||
/usr/include/libunwind-ppc64.h
|
||||
/usr/include/libunwind-riscv.h
|
||||
/usr/include/libunwind-sh.h
|
||||
/usr/include/libunwind-tilegx.h
|
||||
/usr/include/libunwind-x86.h
|
||||
/usr/include/libunwind-x86_64.h
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
# needs refresh:
|
||||
#"${FILESDIR}"/${PN}-1.2.1-only-include-execinfo_h-if-avaliable.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
chmod +x src/ia64/mk_cursor_i || die
|
||||
# Since we have tests disabled via RESTRICT, disable building in the subdir
|
||||
# entirely. This works around some build errors too. #484846
|
||||
sed -i -e '/^SUBDIRS/s:tests::' Makefile.in || die
|
||||
|
||||
elibtoolize
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# --enable-cxx-exceptions: always enable it, headers provide the interface
|
||||
# and on some archs it is disabled by default causing a mismatch between the
|
||||
# API and the ABI, bug #418253
|
||||
# conservative-checks: validate memory addresses before use; as of 1.0.1,
|
||||
# only x86_64 supports this, yet may be useful for debugging, couple it with
|
||||
# debug useflag.
|
||||
ECONF_SOURCE="${S}" \
|
||||
ac_cv_header_atomic_ops_h=$(usex libatomic) \
|
||||
econf \
|
||||
--enable-cxx-exceptions \
|
||||
--enable-coredump \
|
||||
--enable-ptrace \
|
||||
--enable-setjmp \
|
||||
$(use_enable debug-frame) \
|
||||
$(use_enable doc documentation) \
|
||||
$(use_enable lzma minidebuginfo) \
|
||||
$(use_enable static-libs static) \
|
||||
$(use_enable zlib zlibdebuginfo) \
|
||||
$(use_enable debug conservative_checks) \
|
||||
$(use_enable debug)
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
# Bug 586208
|
||||
CCACHE_NODIRECT=1 default
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# Explicitly allow parallel build of tests.
|
||||
# Sandbox causes some tests to freak out.
|
||||
SANDBOX_ON=0 emake check
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
find "${D}" -name "*.la" -type f -delete || die
|
||||
}
|
122
sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.6.2-r1.ebuild
vendored
Normal file
122
sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.6.2-r1.ebuild
vendored
Normal file
@ -0,0 +1,122 @@
|
||||
# Copyright 2005-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-libunwind-docs
|
||||
# Set to 1 if prebuilt, 0 if not
|
||||
# (the construct below is to allow overriding from env for script)
|
||||
: ${LIBUNWIND_DOCS_PREBUILT:=1}
|
||||
|
||||
LIBUNWIND_DOCS_PREBUILT_DEV=sam
|
||||
LIBUNWIND_DOCS_VERSION=$(ver_cut 1-3)
|
||||
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
|
||||
LIBUNWIND_DOCS_USEFLAG="+doc"
|
||||
|
||||
[[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] && LIBUNWIND_DOCS_USEFLAG="doc"
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
inherit multilib-minimal
|
||||
|
||||
DESCRIPTION="Portable and efficient API to determine the call-chain of a program"
|
||||
HOMEPAGE="https://savannah.nongnu.org/projects/libunwind"
|
||||
SRC_URI="mirror://nongnu/libunwind/${MY_P}.tar.gz
|
||||
loong? ( https://dev.gentoo.org/~xen0n/distfiles/${CATEGORY}/${PN}/${P}-loong.patch.xz )"
|
||||
if [[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] ; then
|
||||
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${LIBUNWIND_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${LIBUNWIND_DOCS_VERSION}-docs.tar.xz )"
|
||||
fi
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/8" # libunwind.so.8
|
||||
KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 -sparc x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="debug debug-frame ${LIBUNWIND_DOCS_USEFLAG} libatomic lzma static-libs test zlib"
|
||||
|
||||
RESTRICT="test !test? ( test )" # some tests are broken (toolchain version dependent, rely on external binaries)
|
||||
|
||||
BDEPEND="
|
||||
doc? ( app-text/texlive-core )
|
||||
"
|
||||
RDEPEND="
|
||||
lzma? ( app-arch/xz-utils[static-libs?,${MULTILIB_USEDEP}] )
|
||||
zlib? ( sys-libs/zlib[static-libs?,${MULTILIB_USEDEP}] )
|
||||
"
|
||||
# We just use the header from libatomic.
|
||||
DEPEND="${RDEPEND}
|
||||
libatomic? ( dev-libs/libatomic_ops[${MULTILIB_USEDEP}] )"
|
||||
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/libunwind.h
|
||||
|
||||
# see libunwind.h for the full list of arch-specific headers
|
||||
/usr/include/libunwind-aarch64.h
|
||||
/usr/include/libunwind-arm.h
|
||||
/usr/include/libunwind-hppa.h
|
||||
/usr/include/libunwind-ia64.h
|
||||
/usr/include/libunwind-mips.h
|
||||
/usr/include/libunwind-ppc32.h
|
||||
/usr/include/libunwind-ppc64.h
|
||||
/usr/include/libunwind-riscv.h
|
||||
/usr/include/libunwind-sh.h
|
||||
/usr/include/libunwind-tilegx.h
|
||||
/usr/include/libunwind-x86.h
|
||||
/usr/include/libunwind-x86_64.h
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
local PATCHES=()
|
||||
use loong && PATCHES+=( "${WORKDIR}/${P}-loong.patch" )
|
||||
|
||||
default
|
||||
|
||||
chmod +x src/ia64/mk_cursor_i || die
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
# --enable-cxx-exceptions: always enable it, headers provide the interface
|
||||
# and on some archs it is disabled by default causing a mismatch between the
|
||||
# API and the ABI, bug #418253
|
||||
--enable-cxx-exceptions
|
||||
--enable-coredump
|
||||
--enable-ptrace
|
||||
--enable-setjmp
|
||||
$(use_enable debug-frame)
|
||||
$(multilib_native_use_enable doc documentation)
|
||||
$(use_enable lzma minidebuginfo)
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable zlib zlibdebuginfo)
|
||||
# conservative-checks: validate memory addresses before use; as of 1.0.1,
|
||||
# only x86_64 supports this, yet may be useful for debugging, couple it with
|
||||
# debug useflag.
|
||||
$(use_enable debug conservative_checks)
|
||||
$(use_enable debug)
|
||||
$(use_enable test tests)
|
||||
)
|
||||
|
||||
export ac_cv_header_atomic_ops_h=$(usex libatomic)
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
# bug #586208
|
||||
CCACHE_NODIRECT=1 default
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# Explicitly allow parallel build of tests.
|
||||
# Sandbox causes some tests to freak out.
|
||||
SANDBOX_ON=0 emake check
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
find "${ED}" -name "*.la" -type f -delete || die
|
||||
|
||||
# If USE=doc, there'll be newly generated docs which we install instead.
|
||||
if ! use doc && [[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] ; then
|
||||
doman "${WORKDIR}"/${PN}-${LIBUNWIND_DOCS_VERSION}-docs/man*/*.[0-8]
|
||||
fi
|
||||
}
|
129
sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.7.2.ebuild
vendored
Normal file
129
sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-1.7.2.ebuild
vendored
Normal file
@ -0,0 +1,129 @@
|
||||
# Copyright 2005-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-libunwind-docs
|
||||
# Set to 1 if prebuilt, 0 if not
|
||||
# (the construct below is to allow overriding from env for script)
|
||||
: ${LIBUNWIND_DOCS_PREBUILT:=1}
|
||||
|
||||
LIBUNWIND_DOCS_PREBUILT_DEV=sam
|
||||
LIBUNWIND_DOCS_VERSION=1.7.1
|
||||
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
|
||||
LIBUNWIND_DOCS_USEFLAG="+doc"
|
||||
|
||||
inherit multilib-minimal
|
||||
|
||||
DESCRIPTION="Portable and efficient API to determine the call-chain of a program"
|
||||
HOMEPAGE="https://savannah.nongnu.org/projects/libunwind"
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
LIBUNWIND_DOCS_PREBUILT=0
|
||||
|
||||
EGIT_REPO_URI="https://github.com/libunwind/libunwind"
|
||||
inherit autotools git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/libunwind/libunwind/releases/download/v${PV}/${P}.tar.gz"
|
||||
if [[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] ; then
|
||||
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${LIBUNWIND_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${LIBUNWIND_DOCS_VERSION}-docs.tar.xz )"
|
||||
fi
|
||||
|
||||
KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 -sparc x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
|
||||
[[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] && LIBUNWIND_DOCS_USEFLAG="doc"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/8" # libunwind.so.8
|
||||
IUSE="debug debug-frame ${LIBUNWIND_DOCS_USEFLAG} libatomic lzma static-libs test zlib"
|
||||
|
||||
RESTRICT="test !test? ( test )" # some tests are broken (toolchain version dependent, rely on external binaries)
|
||||
|
||||
BDEPEND="
|
||||
doc? ( app-text/texlive-core )
|
||||
"
|
||||
RDEPEND="
|
||||
lzma? ( app-arch/xz-utils[static-libs?,${MULTILIB_USEDEP}] )
|
||||
zlib? ( sys-libs/zlib[static-libs?,${MULTILIB_USEDEP}] )
|
||||
"
|
||||
# We just use the header from libatomic.
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
libatomic? ( dev-libs/libatomic_ops[${MULTILIB_USEDEP}] )
|
||||
"
|
||||
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/libunwind.h
|
||||
|
||||
# see libunwind.h for the full list of arch-specific headers
|
||||
/usr/include/libunwind-aarch64.h
|
||||
/usr/include/libunwind-arm.h
|
||||
/usr/include/libunwind-hppa.h
|
||||
/usr/include/libunwind-ia64.h
|
||||
/usr/include/libunwind-mips.h
|
||||
/usr/include/libunwind-ppc32.h
|
||||
/usr/include/libunwind-ppc64.h
|
||||
/usr/include/libunwind-riscv.h
|
||||
/usr/include/libunwind-sh.h
|
||||
/usr/include/libunwind-tilegx.h
|
||||
/usr/include/libunwind-x86.h
|
||||
/usr/include/libunwind-x86_64.h
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
chmod +x src/ia64/mk_cursor_i || die
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
eautoreconf
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
# --enable-cxx-exceptions: always enable it, headers provide the interface
|
||||
# and on some archs it is disabled by default causing a mismatch between the
|
||||
# API and the ABI, bug #418253
|
||||
--enable-cxx-exceptions
|
||||
--enable-coredump
|
||||
--enable-ptrace
|
||||
--enable-setjmp
|
||||
$(use_enable debug-frame)
|
||||
$(multilib_native_use_enable doc documentation)
|
||||
$(use_enable lzma minidebuginfo)
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable zlib zlibdebuginfo)
|
||||
# conservative-checks: validate memory addresses before use; as of 1.0.1,
|
||||
# only x86_64 supports this, yet may be useful for debugging, couple it with
|
||||
# debug useflag.
|
||||
$(use_enable debug conservative_checks)
|
||||
$(use_enable debug)
|
||||
$(use_enable test tests)
|
||||
)
|
||||
|
||||
export ac_cv_header_atomic_ops_h=$(usex libatomic)
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
# bug #586208
|
||||
CCACHE_NODIRECT=1 default
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# Explicitly allow parallel build of tests.
|
||||
# Sandbox causes some tests to freak out.
|
||||
SANDBOX_ON=0 emake check
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
find "${ED}" -name "*.la" -type f -delete || die
|
||||
|
||||
# If USE=doc, there'll be newly generated docs which we install instead.
|
||||
if ! use doc && [[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] ; then
|
||||
doman "${WORKDIR}"/${PN}-${LIBUNWIND_DOCS_VERSION}-docs/man*/*.[0-8]
|
||||
fi
|
||||
}
|
129
sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-9999.ebuild
vendored
Normal file
129
sdk_container/src/third_party/portage-stable/sys-libs/libunwind/libunwind-9999.ebuild
vendored
Normal file
@ -0,0 +1,129 @@
|
||||
# Copyright 2005-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-libunwind-docs
|
||||
# Set to 1 if prebuilt, 0 if not
|
||||
# (the construct below is to allow overriding from env for script)
|
||||
: ${LIBUNWIND_DOCS_PREBUILT:=1}
|
||||
|
||||
LIBUNWIND_DOCS_PREBUILT_DEV=sam
|
||||
LIBUNWIND_DOCS_VERSION=1.7.1
|
||||
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
|
||||
LIBUNWIND_DOCS_USEFLAG="+doc"
|
||||
|
||||
inherit multilib-minimal
|
||||
|
||||
DESCRIPTION="Portable and efficient API to determine the call-chain of a program"
|
||||
HOMEPAGE="https://savannah.nongnu.org/projects/libunwind"
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
LIBUNWIND_DOCS_PREBUILT=0
|
||||
|
||||
EGIT_REPO_URI="https://github.com/libunwind/libunwind"
|
||||
inherit autotools git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/libunwind/libunwind/releases/download/v${PV}/${P}.tar.gz"
|
||||
if [[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] ; then
|
||||
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${LIBUNWIND_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${LIBUNWIND_DOCS_VERSION}-docs.tar.xz )"
|
||||
fi
|
||||
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 -sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
|
||||
[[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] && LIBUNWIND_DOCS_USEFLAG="doc"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/8" # libunwind.so.8
|
||||
IUSE="debug debug-frame ${LIBUNWIND_DOCS_USEFLAG} libatomic lzma static-libs test zlib"
|
||||
|
||||
RESTRICT="test !test? ( test )" # some tests are broken (toolchain version dependent, rely on external binaries)
|
||||
|
||||
BDEPEND="
|
||||
doc? ( app-text/texlive-core )
|
||||
"
|
||||
RDEPEND="
|
||||
lzma? ( app-arch/xz-utils[static-libs?,${MULTILIB_USEDEP}] )
|
||||
zlib? ( sys-libs/zlib[static-libs?,${MULTILIB_USEDEP}] )
|
||||
"
|
||||
# We just use the header from libatomic.
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
libatomic? ( dev-libs/libatomic_ops[${MULTILIB_USEDEP}] )
|
||||
"
|
||||
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/libunwind.h
|
||||
|
||||
# see libunwind.h for the full list of arch-specific headers
|
||||
/usr/include/libunwind-aarch64.h
|
||||
/usr/include/libunwind-arm.h
|
||||
/usr/include/libunwind-hppa.h
|
||||
/usr/include/libunwind-ia64.h
|
||||
/usr/include/libunwind-mips.h
|
||||
/usr/include/libunwind-ppc32.h
|
||||
/usr/include/libunwind-ppc64.h
|
||||
/usr/include/libunwind-riscv.h
|
||||
/usr/include/libunwind-sh.h
|
||||
/usr/include/libunwind-tilegx.h
|
||||
/usr/include/libunwind-x86.h
|
||||
/usr/include/libunwind-x86_64.h
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
chmod +x src/ia64/mk_cursor_i || die
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
eautoreconf
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
# --enable-cxx-exceptions: always enable it, headers provide the interface
|
||||
# and on some archs it is disabled by default causing a mismatch between the
|
||||
# API and the ABI, bug #418253
|
||||
--enable-cxx-exceptions
|
||||
--enable-coredump
|
||||
--enable-ptrace
|
||||
--enable-setjmp
|
||||
$(use_enable debug-frame)
|
||||
$(multilib_native_use_enable doc documentation)
|
||||
$(use_enable lzma minidebuginfo)
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable zlib zlibdebuginfo)
|
||||
# conservative-checks: validate memory addresses before use; as of 1.0.1,
|
||||
# only x86_64 supports this, yet may be useful for debugging, couple it with
|
||||
# debug useflag.
|
||||
$(use_enable debug conservative_checks)
|
||||
$(use_enable debug)
|
||||
$(use_enable test tests)
|
||||
)
|
||||
|
||||
export ac_cv_header_atomic_ops_h=$(usex libatomic)
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
# bug #586208
|
||||
CCACHE_NODIRECT=1 default
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# Explicitly allow parallel build of tests.
|
||||
# Sandbox causes some tests to freak out.
|
||||
SANDBOX_ON=0 emake check
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
find "${ED}" -name "*.la" -type f -delete || die
|
||||
|
||||
# If USE=doc, there'll be newly generated docs which we install instead.
|
||||
if ! use doc && [[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] ; then
|
||||
doman "${WORKDIR}"/${PN}-${LIBUNWIND_DOCS_VERSION}-docs/man*/*.[0-8]
|
||||
fi
|
||||
}
|
@ -10,6 +10,7 @@
|
||||
<flag name="libatomic">Use libatomic instead of builtin atomic operations</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="savannah-nongnu">libunwind</remote-id>
|
||||
<remote-id type="github">libunwind/libunwind</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -1 +1,4 @@
|
||||
DIST liburing-2.1.tar.bz2 120806 BLAKE2B 3a09d1504150ed1c111f064187d868fd86ec7c3dbf661f73999f7fbb9c945b528f7ab2e0cfff5d270a1a977f04deedc7c790b6df8708ef2884fbf28c1a9ffd1b SHA512 a658454869b01752b5e499c4f0b50c342a8ff63b3dd1a473a96f9fad03f22a6e4d2354b0e658a4e7e50ea27440a84ee274856b3687803583bc80cb4bc45aec71
|
||||
DIST liburing-2.2.tar.bz2 172733 BLAKE2B 19ae8a356e4fdc296bfb3ff121b777bd7c970388b31686aac5c531508e807360d58220bc27f9c62c55bd76ca687013acfceb3fa8a2162b615561f637cc50ffe1 SHA512 55b935a90c108be54393a5ab341b56e40ad8d506360fe15b3dcde5ee263356f11080f8614efdc4253f6318ea35d808ec47a9dbfc6b9f6cc2e04f7f1a75c3f621
|
||||
DIST liburing-2.3.tar.bz2 197929 BLAKE2B 94ae2a79522fbac13c071ad752f5cbfae3e3b3dd6b35da24e5c756ba47a7b304e5bcb18391ca23fc2edafeb2dbcdcf143fd2cda71656396ac34248159a964fb7 SHA512 341aa13d3b560617f3710291945ec2fe35d828e0b67ee3a97555fd4eb3d2042a7f9e722080d8ebb45aa74a2ca4ef58db1e8a10c351e951a604da007ba69d2738
|
||||
DIST liburing-2.4.tar.bz2 213774 BLAKE2B 3e6c28842db6ee10e38df297e392803e0ff40ccfea774b2c473ba63b5583e760371bf0ce8e34ca4311e2bef69eee81b2b50b5e906bb328d5b321488136fc61e0 SHA512 45b5123739280835c88c1addcf99a3210a91c6e1b3e0c5a20fd4cf3ff55db5fd1475b0351806be2e86fedfa313200eecac6a9a6f410a9eca7e451081fd8eec96
|
||||
|
@ -0,0 +1,35 @@
|
||||
From 19424b0baa5999918701e1972b901b0937331581 Mon Sep 17 00:00:00 2001
|
||||
From: Ammar Faizi <ammarfaizi2@gnuweeb.org>
|
||||
Date: Sat, 14 Jan 2023 10:54:05 +0700
|
||||
Subject: [PATCH] liburing.map: Export
|
||||
`io_uring_{enable_rings,register_restrictions}`
|
||||
|
||||
When adding these two functions, Stefano didn't add
|
||||
io_uring_enable_rings() and io_uring_register_restrictions() to
|
||||
liburing.map. It causes a linking problem. Add them to liburing.map.
|
||||
|
||||
This issue hits liburing 2.0 to 2.3.
|
||||
|
||||
[flow: backport to liburing 2.3]
|
||||
|
||||
Closes: https://github.com/axboe/liburing/pull/774
|
||||
Fixes: https://github.com/axboe/liburing/issues/773
|
||||
Fixes: https://github.com/facebook/folly/issues/1908
|
||||
Fixes: d2654b1ac886 ("Add helper to enable rings")
|
||||
Fixes: 25cf9b968a27 ("Add helper to register restrictions")
|
||||
Cc: Dylan Yudaken <dylany@meta.com>
|
||||
Cc: Stefano Garzarella <sgarzare@redhat.com>
|
||||
Signed-off-by: Ammar Faizi <ammarfaizi2@gnuweeb.org>
|
||||
Link: https://lore.kernel.org/r/20230114035405.429608-1-ammar.faizi@intel.com
|
||||
Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
||||
--- a/src/liburing.map
|
||||
+++ b/src/liburing.map
|
||||
@@ -68,2 +68,5 @@ LIBURING_2.3 {
|
||||
io_uring_submit_and_get_events;
|
||||
+
|
||||
+ io_uring_enable_rings;
|
||||
+ io_uring_register_restrictions;
|
||||
} LIBURING_2.3;
|
||||
--
|
||||
2.39.1
|
||||
|
@ -0,0 +1,150 @@
|
||||
From 11dc64a71558948aef16730cb363e7e5da773a5b Mon Sep 17 00:00:00 2001
|
||||
From: Steffen <steffen.winter@proton.me>
|
||||
Date: Mon, 13 Feb 2023 17:32:16 +0100
|
||||
Subject: [PATCH 1/3] Add custom error function for tests.
|
||||
|
||||
On musl systems, liburing cannot build examples and tests due to
|
||||
it's usage of error.h. t_error calls fprintf(stderr, ...) and
|
||||
exits.
|
||||
|
||||
Closes: #786
|
||||
|
||||
Signed-off-by: Steffen Winter <steffen.winter@proton.me>
|
||||
--- a/test/helpers.c
|
||||
+++ b/test/helpers.c
|
||||
@@ -8,6 +8,7 @@
|
||||
#include <stdio.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
+#include <stdarg.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#include <arpa/inet.h>
|
||||
@@ -300,3 +301,20 @@ unsigned __io_uring_flush_sq(struct io_uring *ring)
|
||||
*/
|
||||
return tail - *sq->khead;
|
||||
}
|
||||
+
|
||||
+/*
|
||||
+ * Implementation of error(3), prints an error message and exits.
|
||||
+ */
|
||||
+void t_error(int status, int errnum, const char *format, ...)
|
||||
+{
|
||||
+ va_list args;
|
||||
+ va_start(args, format);
|
||||
+
|
||||
+ vfprintf(stderr, format, args);
|
||||
+ if (errnum)
|
||||
+ fprintf(stderr, ": %s", strerror(errnum));
|
||||
+
|
||||
+ fprintf(stderr, "\n");
|
||||
+ va_end(args);
|
||||
+ exit(status);
|
||||
+}
|
||||
--- a/test/helpers.h
|
||||
+++ b/test/helpers.h
|
||||
@@ -89,6 +89,8 @@ unsigned __io_uring_flush_sq(struct io_uring *ring);
|
||||
|
||||
#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
|
||||
|
||||
+void t_error(int status, int errnum, const char *format, ...);
|
||||
+
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
From 3b0b4976d7da2e4616fe860fb7a8e52d88d4523b Mon Sep 17 00:00:00 2001
|
||||
From: Steffen <steffen.winter@proton.me>
|
||||
Date: Mon, 13 Feb 2023 17:56:03 +0100
|
||||
Subject: [PATCH 2/3] test: Use t_error instead of glibc's error.
|
||||
|
||||
On musl systems, liburing cannot build examples and tests due to
|
||||
it's usage of error.h. Replacing calls to error() with t_error().
|
||||
|
||||
Closes: #786
|
||||
|
||||
Signed-off-by: Steffen Winter <steffen.winter@proton.me>
|
||||
--- a/test/defer-taskrun.c
|
||||
+++ b/test/defer-taskrun.c
|
||||
@@ -4,7 +4,6 @@
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
-#include <error.h>
|
||||
#include <sys/eventfd.h>
|
||||
#include <signal.h>
|
||||
#include <poll.h>
|
||||
--- a/test/send-zerocopy.c
|
||||
+++ b/test/send-zerocopy.c
|
||||
@@ -4,7 +4,6 @@
|
||||
#include <stdint.h>
|
||||
#include <assert.h>
|
||||
#include <errno.h>
|
||||
-#include <error.h>
|
||||
#include <limits.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
--- a/test/single-issuer.c
|
||||
+++ b/test/single-issuer.c
|
||||
@@ -5,7 +5,6 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <fcntl.h>
|
||||
-#include <error.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/wait.h>
|
||||
|
||||
@@ -56,13 +55,13 @@ static int try_submit(struct io_uring *ring)
|
||||
return ret;
|
||||
|
||||
if (ret != 1)
|
||||
- error(1, ret, "submit %i", ret);
|
||||
+ t_error(1, ret, "submit %i", ret);
|
||||
ret = io_uring_wait_cqe(ring, &cqe);
|
||||
if (ret)
|
||||
- error(1, ret, "wait fail %i", ret);
|
||||
+ t_error(1, ret, "wait fail %i", ret);
|
||||
|
||||
if (cqe->res || cqe->user_data != 42)
|
||||
- error(1, ret, "invalid cqe");
|
||||
+ t_error(1, ret, "invalid cqe");
|
||||
|
||||
io_uring_cqe_seen(ring, cqe);
|
||||
return 0;
|
||||
@@ -105,7 +104,7 @@ int main(int argc, char *argv[])
|
||||
ret = io_uring_queue_init(8, &ring, IORING_SETUP_SINGLE_ISSUER |
|
||||
IORING_SETUP_R_DISABLED);
|
||||
if (ret)
|
||||
- error(1, ret, "ring init (2) %i", ret);
|
||||
+ t_error(1, ret, "ring init (2) %i", ret);
|
||||
|
||||
if (!fork_t()) {
|
||||
io_uring_enable_rings(&ring);
|
||||
@@ -121,7 +120,7 @@ int main(int argc, char *argv[])
|
||||
ret = io_uring_queue_init(8, &ring, IORING_SETUP_SINGLE_ISSUER |
|
||||
IORING_SETUP_R_DISABLED);
|
||||
if (ret)
|
||||
- error(1, ret, "ring init (3) %i", ret);
|
||||
+ t_error(1, ret, "ring init (3) %i", ret);
|
||||
|
||||
io_uring_enable_rings(&ring);
|
||||
if (!fork_t()) {
|
||||
@@ -136,7 +135,7 @@ int main(int argc, char *argv[])
|
||||
/* test that anyone can submit to a SQPOLL|SINGLE_ISSUER ring */
|
||||
ret = io_uring_queue_init(8, &ring, IORING_SETUP_SINGLE_ISSUER|IORING_SETUP_SQPOLL);
|
||||
if (ret)
|
||||
- error(1, ret, "ring init (4) %i", ret);
|
||||
+ t_error(1, ret, "ring init (4) %i", ret);
|
||||
|
||||
ret = try_submit(&ring);
|
||||
if (ret) {
|
||||
@@ -156,7 +155,7 @@ int main(int argc, char *argv[])
|
||||
/* test that IORING_ENTER_REGISTERED_RING doesn't break anything */
|
||||
ret = io_uring_queue_init(8, &ring, IORING_SETUP_SINGLE_ISSUER);
|
||||
if (ret)
|
||||
- error(1, ret, "ring init (5) %i", ret);
|
||||
+ t_error(1, ret, "ring init (5) %i", ret);
|
||||
|
||||
if (!fork_t()) {
|
||||
ret = try_submit(&ring);
|
||||
|
@ -12,7 +12,7 @@ if [[ "${PV}" == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/axboe/liburing.git"
|
||||
else
|
||||
SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
|
||||
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
|
||||
fi
|
||||
LICENSE="MIT"
|
||||
SLOT="0/2" # liburing.so major version
|
||||
@ -54,7 +54,7 @@ multilib_src_configure() {
|
||||
--cxx="$(tc-getCXX)"
|
||||
)
|
||||
# No autotools configure! "econf" will fail.
|
||||
TMPDIR="${T}" ./configure "${myconf[@]}"
|
||||
TMPDIR="${T}" ./configure "${myconf[@]}" || die
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
|
@ -12,7 +12,7 @@ if [[ "${PV}" == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/axboe/liburing.git"
|
||||
else
|
||||
SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
|
||||
fi
|
||||
LICENSE="MIT"
|
||||
SLOT="0/2" # liburing.so major version
|
||||
@ -21,10 +21,9 @@ IUSE="static-libs"
|
||||
# fsync test hangs forever
|
||||
RESTRICT="test"
|
||||
|
||||
PATCHES=(
|
||||
# Upstream, bug #816798
|
||||
"${FILESDIR}"/${P}-arm-syscall.patch
|
||||
)
|
||||
# At least installed headers need <linux/*>, bug #802516
|
||||
DEPEND=">=sys-kernel/linux-headers-5.1"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
@ -45,9 +44,10 @@ multilib_src_configure() {
|
||||
--libdevdir="${EPREFIX}/usr/$(get_libdir)"
|
||||
--mandir="${EPREFIX}/usr/share/man"
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
)
|
||||
# No autotools configure! "econf" will fail.
|
||||
TMPDIR="${T}" ./configure "${myconf[@]}"
|
||||
TMPDIR="${T}" ./configure "${myconf[@]}" || die
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
90
sdk_container/src/third_party/portage-stable/sys-libs/liburing/liburing-2.3-r4.ebuild
vendored
Normal file
90
sdk_container/src/third_party/portage-stable/sys-libs/liburing/liburing-2.3-r4.ebuild
vendored
Normal file
@ -0,0 +1,90 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit multilib-minimal toolchain-funcs
|
||||
|
||||
DESCRIPTION="Efficient I/O with io_uring"
|
||||
HOMEPAGE="https://github.com/axboe/liburing"
|
||||
if [[ "${PV}" == *9999 ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/axboe/liburing.git"
|
||||
else
|
||||
SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
|
||||
QA_PKGCONFIG_VERSION=${PV}
|
||||
fi
|
||||
LICENSE="MIT"
|
||||
SLOT="0/2" # liburing.so major version
|
||||
|
||||
IUSE="examples static-libs test"
|
||||
# fsync test hangs forever
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# At least installed headers need <linux/*>, bug #802516
|
||||
DEPEND=">=sys-kernel/linux-headers-5.1"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
PATCHES=(
|
||||
# https://bugs.gentoo.org/891633
|
||||
"${FILESDIR}/${PN}-2.3-liburing.map-Export-io_uring_-enable_rings-register_.patch"
|
||||
# https://github.com/axboe/liburing/pull/787
|
||||
"${FILESDIR}/${PN}-2.3-remove-error-from-error_h-for-portability.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if ! use examples; then
|
||||
sed -e '/examples/d' Makefile -i || die
|
||||
fi
|
||||
if ! use test; then
|
||||
sed -e '/test/d' Makefile -i || die
|
||||
fi
|
||||
|
||||
multilib_copy_sources
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=(
|
||||
--prefix="${EPREFIX}/usr"
|
||||
--libdir="${EPREFIX}/usr/$(get_libdir)"
|
||||
--libdevdir="${EPREFIX}/usr/$(get_libdir)"
|
||||
--mandir="${EPREFIX}/usr/share/man"
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
)
|
||||
# No autotools configure! "econf" will fail.
|
||||
TMPDIR="${T}" ./configure "${myconf[@]}" || die
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
emake V=1 AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)"
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
if ! use static-libs ; then
|
||||
find "${ED}" -type f -name "*.a" -delete || die
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
local disabled_tests=(
|
||||
accept.c
|
||||
fpos.c
|
||||
io_uring_register.c
|
||||
link-timeout.c
|
||||
read-before-exit.c
|
||||
recv-msgall-stream.c
|
||||
)
|
||||
local disabled_test
|
||||
for disabled_test in "${disabled_tests[@]}"; do
|
||||
sed -i "/\s*${disabled_test}/d" test/Makefile \
|
||||
|| die "Failed to remove ${disabled_test}"
|
||||
done
|
||||
|
||||
emake -C test V=1 runtests
|
||||
}
|
83
sdk_container/src/third_party/portage-stable/sys-libs/liburing/liburing-2.4.ebuild
vendored
Normal file
83
sdk_container/src/third_party/portage-stable/sys-libs/liburing/liburing-2.4.ebuild
vendored
Normal file
@ -0,0 +1,83 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit multilib-minimal toolchain-funcs
|
||||
|
||||
DESCRIPTION="Efficient I/O with io_uring"
|
||||
HOMEPAGE="https://github.com/axboe/liburing"
|
||||
if [[ "${PV}" == *9999 ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/axboe/liburing.git"
|
||||
else
|
||||
SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
QA_PKGCONFIG_VERSION=${PV}
|
||||
fi
|
||||
LICENSE="MIT"
|
||||
SLOT="0/2" # liburing.so major version
|
||||
|
||||
IUSE="examples static-libs test"
|
||||
# fsync test hangs forever
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# At least installed headers need <linux/*>, bug #802516
|
||||
DEPEND=">=sys-kernel/linux-headers-5.1"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if ! use examples; then
|
||||
sed -e '/examples/d' Makefile -i || die
|
||||
fi
|
||||
if ! use test; then
|
||||
sed -e '/test/d' Makefile -i || die
|
||||
fi
|
||||
|
||||
multilib_copy_sources
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=(
|
||||
--prefix="${EPREFIX}/usr"
|
||||
--libdir="${EPREFIX}/usr/$(get_libdir)"
|
||||
--libdevdir="${EPREFIX}/usr/$(get_libdir)"
|
||||
--mandir="${EPREFIX}/usr/share/man"
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
)
|
||||
# No autotools configure! "econf" will fail.
|
||||
TMPDIR="${T}" ./configure "${myconf[@]}" || die
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
emake V=1 AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)"
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
if ! use static-libs ; then
|
||||
find "${ED}" -type f -name "*.a" -delete || die
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
local disabled_tests=(
|
||||
accept.c
|
||||
fpos.c
|
||||
io_uring_register.c
|
||||
link-timeout.c
|
||||
read-before-exit.c
|
||||
recv-msgall-stream.c
|
||||
)
|
||||
local disabled_test
|
||||
for disabled_test in "${disabled_tests[@]}"; do
|
||||
sed -i "/\s*${disabled_test}/d" test/Makefile \
|
||||
|| die "Failed to remove ${disabled_test}"
|
||||
done
|
||||
|
||||
emake -C test V=1 runtests
|
||||
}
|
@ -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
|
||||
@ -12,22 +12,28 @@ if [[ "${PV}" == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/axboe/liburing.git"
|
||||
else
|
||||
SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
QA_PKGCONFIG_VERSION=${PV}
|
||||
fi
|
||||
LICENSE="MIT"
|
||||
SLOT="0/2" # liburing.so major version
|
||||
|
||||
IUSE="static-libs"
|
||||
IUSE="examples static-libs test"
|
||||
# fsync test hangs forever
|
||||
RESTRICT="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# At least installed headers need <linux/*>, bug #802516
|
||||
DEPEND=">=sys-kernel/linux-headers-5.1"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if [[ "${PV}" != *9999 ]] ; then
|
||||
# Make sure pkgconfig files contain the correct version
|
||||
# bug #809095 and #833895
|
||||
sed -i "/^Version:/s@[[:digit:]\.]\+@${PV}@" ${PN}.spec || die
|
||||
if ! use examples; then
|
||||
sed -e '/examples/d' Makefile -i || die
|
||||
fi
|
||||
if ! use test; then
|
||||
sed -e '/test/d' Makefile -i || die
|
||||
fi
|
||||
|
||||
multilib_copy_sources
|
||||
@ -40,9 +46,10 @@ multilib_src_configure() {
|
||||
--libdevdir="${EPREFIX}/usr/$(get_libdir)"
|
||||
--mandir="${EPREFIX}/usr/share/man"
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
)
|
||||
# No autotools configure! "econf" will fail.
|
||||
TMPDIR="${T}" ./configure "${myconf[@]}"
|
||||
TMPDIR="${T}" ./configure "${myconf[@]}" || die
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
@ -58,5 +65,19 @@ multilib_src_install_all() {
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
emake V=1 runtests
|
||||
local disabled_tests=(
|
||||
accept.c
|
||||
fpos.c
|
||||
io_uring_register.c
|
||||
link-timeout.c
|
||||
read-before-exit.c
|
||||
recv-msgall-stream.c
|
||||
)
|
||||
local disabled_test
|
||||
for disabled_test in "${disabled_tests[@]}"; do
|
||||
sed -i "/\s*${disabled_test}/d" test/Makefile \
|
||||
|| die "Failed to remove ${disabled_test}"
|
||||
done
|
||||
|
||||
emake -C test V=1 runtests
|
||||
}
|
||||
|
@ -2,8 +2,8 @@
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>polynomial-c@gentoo.org</email>
|
||||
<name>Lars Wendler</name>
|
||||
<name>Florian Schmaus</name>
|
||||
<email>flow@gentoo.org</email>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">axboe/liburing</remote-id>
|
||||
|
@ -1,3 +1 @@
|
||||
DIST acpid-2.0.32.tar.xz 155768 BLAKE2B 829b2f78f497d9c0bbd90d952cadad96beece3070240bee69f2a5cf28903e9e5f969a3bf9000552c63a52c17f8b94285a181f4301449a9b64c573032d9a4d255 SHA512 c7afffdf9818504e1ac03b0ad693a05f772bfd07af9808262b3b6bb82ca4dabe6253c94e6dc59e5be6f0da9e815e8bcf2d3e16f02b23d0248b6bad4509e78be7
|
||||
DIST acpid-2.0.33.tar.xz 156580 BLAKE2B 72a0835f3d88f4ccae44016809fdb930977f6b02dae6f74068186a8c850237764a1e8cd69a478e5af42115d5f630a9f91cd77b35b8cf01854e24b7e06bbdd536 SHA512 491a58c62fcad44dc57cbd9294437fbc215c2ec99a030286601cd1956ea504e723e61b11b315983073d66aace1997bc40e6421475f6073298f60b8dcda2add75
|
||||
DIST sys-power_acpid_2.0.32-r2_extras.tar.xz 2196 BLAKE2B 0975289f7cff6ce24523246f1daac22149d69c410e07a19a5952457e269fc1f736bd3636c93038f660c411f3085d375250c31dc3de3ac1bc6335a97e1fa3dea3 SHA512 f49cf3f75f5db4ca454d29330ae40461deb1109f076e140188a7560fedd78970572a6c023146c4d33c0778ff65056abcbc66725c000ece8e6861419d02d0c6ca
|
||||
DIST acpid-2.0.34.tar.xz 159924 BLAKE2B 1379978f8c5816febcde2d3bb641f8a51736ae0caed97a45caa990576d314608a455307df11f6abafa2ef8bbaa47554f581605aa9c1af150ee64b9eb684fee15 SHA512 2bf92295b55bb44fe83074b3e0c1ae639f63edaeea84b2184ae95b38852be40f380d5413110b8c0fcb2efc2ec01bf4764e1dcb97022fc724bebbfc35c0b63c81
|
||||
|
@ -1,71 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
inherit linux-info systemd
|
||||
|
||||
DESCRIPTION="Daemon for Advanced Configuration and Power Interface"
|
||||
HOMEPAGE="https://sourceforge.net/projects/acpid2"
|
||||
EXTRAS_VER="2.0.32-r2"
|
||||
EXTRAS_NAME="${CATEGORY}_${PN}_${EXTRAS_VER}_extras"
|
||||
SRC_URI="mirror://sourceforge/${PN}2/${P}.tar.xz
|
||||
https://dev.gentoo.org/~andrey_utkin/distfiles/${EXTRAS_NAME}.tar.xz
|
||||
"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm arm64 ~ia64 ~riscv x86"
|
||||
IUSE="selinux"
|
||||
|
||||
RDEPEND="selinux? ( sec-policy/selinux-apm )"
|
||||
DEPEND=">=sys-kernel/linux-headers-3"
|
||||
|
||||
pkg_pretend() {
|
||||
local CONFIG_CHECK="~INPUT_EVDEV"
|
||||
local WARNING_INPUT_EVDEV="CONFIG_INPUT_EVDEV is required for ACPI button event support."
|
||||
[[ ${MERGE_TYPE} != buildonly ]] && check_extra_config
|
||||
}
|
||||
|
||||
pkg_setup() { :; }
|
||||
|
||||
PATCHES=(
|
||||
"${WORKDIR}/${EXTRAS_NAME}/${PN}-2.0.32-powerbtn-gsd-power.patch" #702700
|
||||
)
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
newdoc kacpimon/README README.kacpimon
|
||||
dodoc -r samples
|
||||
rm -f "${D}"/usr/share/doc/${PF}/COPYING || die
|
||||
|
||||
exeinto /etc/acpi
|
||||
newexe "${WORKDIR}/${EXTRAS_NAME}/${PN}-1.0.6-default.sh" default.sh
|
||||
exeinto /etc/acpi/actions
|
||||
newexe samples/powerbtn/powerbtn.sh powerbtn.sh
|
||||
insinto /etc/acpi/events
|
||||
newins "${WORKDIR}/${EXTRAS_NAME}/${PN}-1.0.4-default" default
|
||||
|
||||
newinitd "${WORKDIR}/${EXTRAS_NAME}/${PN}-2.0.26-init.d" ${PN}
|
||||
newconfd "${WORKDIR}/${EXTRAS_NAME}/${PN}-2.0.16-conf.d" ${PN}
|
||||
|
||||
systemd_dounit "${WORKDIR}"/${EXTRAS_NAME}/systemd/${PN}.{service,socket}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -z ${REPLACING_VERSIONS} ]]; then
|
||||
elog
|
||||
elog "You may wish to read the Gentoo Linux Power Management Guide,"
|
||||
elog "which can be found online at:"
|
||||
elog "https://wiki.gentoo.org/wiki/Power_management/Guide"
|
||||
elog
|
||||
fi
|
||||
|
||||
# files/systemd/acpid.socket -> ListenStream=/run/acpid.socket
|
||||
mkdir -p "${ROOT%/}"/run
|
||||
|
||||
if ! grep -qs "^tmpfs.*/run " "${ROOT%/}"/proc/mounts ; then
|
||||
echo
|
||||
ewarn "You should reboot the system now to get /run mounted with tmpfs!"
|
||||
fi
|
||||
}
|
@ -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,12 +11,16 @@ SRC_URI="mirror://sourceforge/${PN}2/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~riscv ~x86"
|
||||
KEYWORDS="amd64 ~arm arm64 ~ia64 ~loong ~riscv x86"
|
||||
IUSE="selinux"
|
||||
|
||||
RDEPEND="selinux? ( sec-policy/selinux-apm )"
|
||||
DEPEND=">=sys-kernel/linux-headers-3"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.0.34-lfs.patch
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
local CONFIG_CHECK="~INPUT_EVDEV"
|
||||
local WARNING_INPUT_EVDEV="CONFIG_INPUT_EVDEV is required for ACPI button event support."
|
19
sdk_container/src/third_party/portage-stable/sys-power/acpid/files/acpid-2.0.34-lfs.patch
vendored
Normal file
19
sdk_container/src/third_party/portage-stable/sys-power/acpid/files/acpid-2.0.34-lfs.patch
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
Since version 1.2.4 musl no longer enables legacy LFS interfaces as part
|
||||
of _GNU_SOURCE, and will remove them altogether in a future release [1].
|
||||
Just switch to the standard interfaces.
|
||||
|
||||
[1] https://musl.libc.org/releases.html
|
||||
|
||||
--- a/sock.c
|
||||
+++ b/sock.c
|
||||
@@ -54,8 +54,8 @@
|
||||
static int
|
||||
isfdtype(int fd, int fdtype)
|
||||
{
|
||||
- struct stat64 st;
|
||||
- if (fstat64(fd, &st) != 0)
|
||||
+ struct stat st;
|
||||
+ if (fstat(fd, &st) != 0)
|
||||
return -1;
|
||||
return ((st.st_mode & S_IFMT) == (mode_t)fdtype);
|
||||
}
|
Loading…
Reference in New Issue
Block a user