sys-cluster/ipvsadm: Sync with gentoo

It's from gentoo commit 38b155fa1bf907617067c98eb4ba3a5d0790eb1a.
This commit is contained in:
Krzesimir Nowak 2021-11-05 21:32:05 +01:00
parent 3e36a74eb1
commit ba695ac9da
9 changed files with 31 additions and 277 deletions

View File

@ -1,5 +1,3 @@
DIST ipvsadm-1.21-11.tar.gz 34030 SHA256 7b85020f84d4648166bce480d747d82ac5c9113f9a222e3de7eb92b7af0598fa SHA512 55a50b4a06798b035481b4d8080ff8b64772802a564f91e7ff9fc7179ff8ed687681615a22b4c51b99065b574108b6a2c616e9acf54877dfd46c221e67f99048 WHIRLPOOL 4fb619061a5d08c7f6ae9cb9a9b7e2bdd6fa1a4a0745622fe4bbd79bee79228b58191af021119e0dc8694bb0a0e74fe1468c6ffaeeb5262e85fe63c65453db23
DIST ipvsadm-1.24.tar.gz 32007 SHA256 773cbada48061e3afafaeaa2800d5382b8ff638b2c929293c14a793112a0642a SHA512 f472e55d78901de3b8f07dec0ff6e32b5aa301dc0dc62f34fe168511c8e2af26704fb66936540eb1173d7a0280428a2e6e48f9efadd3e33050dd881e666e1041 WHIRLPOOL 846d06b4977d93562618a9215b470272915458e8712346f37dc02c6afb2e0365ec15f589caedc7654a2a33542610a8f90fc3acc6c52a12a9fdf8098789fe682b
DIST ipvsadm-1.26.tar.gz 41700 SHA256 6d6c46fecb1c532a892616b4445c73b71730e8790d5630f60269fd9cbee0eb2d SHA512 873e23a6bdaabc153b00f1ede3853c947e8c8cfb4e18364d55197c74f26cc883ca469e074a90f377fbfd5e73e0cd6c1fe414c9f7a5c28b0d4431af58056eced4 WHIRLPOOL 5f62ad434c7da3359adbfae1cdde230769f19f0c82a190d7ef6fc8ba340d5e761875a778ad9a1dd7162d385b8ebda89c589b7179d53d495c79e82056e46bce9a
DIST ipvsadm-1.27.tar.xz 38196 SHA256 d360fb4dcf591e0a8a918831e2c02b1dc03e3c17ee1e60d0d70de9455238b3f8 SHA512 cf982b7981674c91d1b7516de7b55cf378b306ce4a53e13976b8eeb8610015c4fa4aa9d251bc4d329db8e05c1862863160af2d3c63b76263f290087cffdf1b80 WHIRLPOOL fbb69043813ccba929bb044c9d7854b67e8d656ae08209f17e21d3d237ea4690cd8ea7a1e2806ce6b07f847eb9796e93649c7f5231d2356e8519696b5a504b73
DIST ipvsadm-1.28.tar.xz 38600 SHA256 90e0e49cad5acb9db1c04ed4cdadf7933152a472c2f694039b9d7a291c37f3ab SHA512 a1e10ce30751d9439f832e221e5c41b338f87dcc94a0b21329d908a9164f8882049af9d9d918b764b36c30e353d5b8db49d7088e60c24e4748713c06cccf7035 WHIRLPOOL 76e972792b779526b666469e92a4e181f9b63765bea2a3908b68ea0cac9bd45533c5eeb04f618993d45dae12b8268271c18df3fae82a3eb62d14fa3db4a4f74b
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

View File

@ -1,113 +0,0 @@
--- a/Makefile
+++ b/Makefile
@@ -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
@@ -94,10 +93,12 @@
all: libs ipvsadm
libs:
- make -C libipvs
+ $(MAKE) -C libipvs
+
+$(OBJS): libs
-ipvsadm: $(OBJS) $(STATIC_LIBS)
- $(CC) $(CFLAGS) -o $@ $^ $(LIBS)
+ipvsadm: $(OBJS)
+ $(CC) $(LDFLAGS) $(OPTFLAGS) $(CFLAGS) -o $@ $^ -Llibipvs -lipvs $(LIBS)
-install: all
+install:
if [ ! -d $(SBIN) ]; then $(MKDIR) -p $(SBIN); fi
@@ -108,15 +109,13 @@
$(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
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
+ $(MAKE) -C libipvs clean
distclean: clean
@@ -149,4 +148,4 @@
dpkg-buildpackage
%.o: %.c
- $(CC) $(CFLAGS) $(INCLUDE) $(DEFINES) -c -o $@ $<
+ $(CC) $(OPTFLAGS) $(CFLAGS) $(INCLUDE) $(DEFINES) -c -o $@ $<
--- a/libipvs/Makefile
+++ b/libipvs/Makefile
@@ -1,32 +1,39 @@
# 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
endif
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;)
.PHONY = all clean install dist distclean rpm rpms
-STATIC_LIB = libipvs.a
-SHARED_LIB = libipvs.so
-all: $(STATIC_LIB) $(SHARED_LIB)
+TARGETS = libipvs.so
-$(STATIC_LIB): libipvs.o ip_vs_nl_policy.o
+ifeq (1,$(STATIC_LIB))
+TARGETS += libipvs.a
+endif
+
+all: $(TARGETS)
+
+libipvs.a: libipvs.o ip_vs_nl_policy.o
ar rv $@ $^
-$(SHARED_LIB): libipvs.o ip_vs_nl_policy.o
- $(CC) -shared -Wl,-soname,$@ -o $@ $^
+libipvs.so: libipvs.lo ip_vs_nl_policy.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

View File

@ -1,32 +0,0 @@
From 81529af388c0f0f4e4b169b7bcb285ef5e798f41 Mon Sep 17 00:00:00 2001
From: Christian Ruppert <idl0r@gentoo.org>
Date: Sat, 8 Oct 2011 02:05:37 +0200
Subject: [PATCH] Fix stack smashing because of a typo
IPVS_CMD_ATTR_MAX was the size of __IPVS_SVC_ATTR_MAX before, which has a
different size and thus it caused trouble. The right enum to use is
__IPVS_CMD_ATTR_MAX.
Reported-by: Deniss Gaplevsky <slim@inbox.lv>
X-Gentoo-Bug: 371903
X-Gentoo-Bug-URL: https://bugs.gentoo.org/371903
---
libipvs/ip_vs.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/libipvs/ip_vs.h b/libipvs/ip_vs.h
index 9726a17..5e1d544 100644
--- a/libipvs/ip_vs.h
+++ b/libipvs/ip_vs.h
@@ -413,7 +413,7 @@ enum {
__IPVS_CMD_ATTR_MAX,
};
-#define IPVS_CMD_ATTR_MAX (__IPVS_SVC_ATTR_MAX - 1)
+#define IPVS_CMD_ATTR_MAX (__IPVS_CMD_ATTR_MAX - 1)
/*
* Attributes used to describe a service
--
1.7.3.4

View File

@ -1,49 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
inherit linux-info
PATCHLEVEL="11"
MY_PV="${PV}-${PATCHLEVEL}"
MY_P="${PN}-${MY_PV}"
DESCRIPTION="utility to administer the IP virtual server services"
HOMEPAGE="http://linuxvirtualserver.org"
LICENSE="GPL-2"
DEPEND=">=sys-libs/ncurses-5.2"
SRC_URI="http://www.linuxvirtualserver.org/software/kernel-2.4/${MY_P}.tar.gz"
SLOT="0"
KEYWORDS="~ppc ~ppc64 x86"
IUSE=""
S="${WORKDIR}/${MY_P}"
pkg_setup() {
if kernel_is -ge 2 6; then
eerror "${P} does not support 2.6 kernels, please try newer versions"
die "wrong kernel version"
fi
}
src_compile() {
emake || die "error compiling source"
}
src_install() {
into /
dosbin ipvsadm ipvsadm-save ipvsadm-restore || die
doman ipvsadm.8 ipvsadm-save.8 ipvsadm-restore.8
newinitd "${FILESDIR}"/ipvsadm-init ipvsadm || die
keepdir /var/lib/ipvsadm
dolib.a libipvs/libipvs.a || die
insinto /usr/include/ipvs
newins libipvs/libipvs.h ipvs.h || die
einfo "You will need a kernel that has ipvs patches to use LVS"
}

View File

@ -1,52 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
inherit linux-info toolchain-funcs
DESCRIPTION="utility to administer the IP virtual server services offered by the Linux kernel"
HOMEPAGE="http://linuxvirtualserver.org/"
SRC_URI="http://www.linuxvirtualserver.org/software/kernel-2.5/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ia64 ~ppc64 s390 sparc x86"
IUSE=""
RDEPEND=">=sys-libs/ncurses-5.2"
DEPEND="${RDEPEND}"
pkg_setup() {
if kernel_is 2 4; then
eerror "${P} supports only 2.6 kernels, please try ${PN}-1.21 for 2.4 kernels"
die "wrong kernel version"
fi
}
src_compile() {
emake \
-j1 \
INCLUDE="-I${KV_DIR}/include -I.. -I." \
CFLAGS="${CFLAGS}" \
CC="$(tc-getCC)" \
|| die "error compiling source"
}
src_install() {
into /
dosbin ipvsadm ipvsadm-save ipvsadm-restore || die
doman ipvsadm.8 ipvsadm-save.8 ipvsadm-restore.8 || die
newinitd "${FILESDIR}"/ipvsadm-init ipvsadm
keepdir /var/lib/ipvsadm
dolib.a libipvs/libipvs.a || die
insinto /usr/include/ipvs
newins libipvs/libipvs.h ipvs.h || die
}
pkg_postinst() {
einfo "You will need a kernel that has ipvs patches to use LVS."
einfo "This version is specifically for 2.6 kernels."
}

View File

@ -1,9 +1,9 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils linux-info toolchain-funcs
inherit epatch linux-info toolchain-funcs
DESCRIPTION="utility to administer the IP virtual server services"
HOMEPAGE="http://linuxvirtualserver.org/"
@ -11,7 +11,7 @@ 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"
KEYWORDS="amd64 ~ia64 ppc ppc64 ~s390 sparc x86"
IUSE="static-libs"
RDEPEND=">=sys-libs/ncurses-5.2:*
@ -39,7 +39,7 @@ src_prepare() {
src_compile() {
local libnl_include
if has_version ">=dev-libs/libnl-3.0"; then
libnl_include=$(pkg-config --cflags libnl-3.0)
libnl_include=$($(tc-getPKG_CONFIG) --cflags libnl-3.0)
else
libnl_include=""
fi
@ -48,7 +48,7 @@ src_compile() {
CC="$(tc-getCC)" \
HAVE_NL=1 \
STATIC=${STATIC} \
POPT_LIB="$(pkg-config --libs popt)"
POPT_LIB="$($(tc-getPKG_CONFIG) --libs popt)"
}
src_install() {

View File

@ -1,9 +1,9 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils linux-info toolchain-funcs
inherit epatch linux-info toolchain-funcs
DESCRIPTION="utility to administer the IP virtual server services"
HOMEPAGE="http://linuxvirtualserver.org/"
@ -37,7 +37,7 @@ src_prepare() {
src_compile() {
local libnl_include
if has_version ">=dev-libs/libnl-3.0"; then
libnl_include=$(pkg-config --cflags libnl-3.0)
libnl_include=$($(tc-getPKG_CONFIG) --cflags libnl-3.0)
else
libnl_include=""
fi
@ -46,7 +46,7 @@ src_compile() {
CC="$(tc-getCC)" \
HAVE_NL=1 \
STATIC=${STATIC} \
POPT_LIB="$(pkg-config --libs popt)"
POPT_LIB="$($(tc-getPKG_CONFIG) --libs popt)"
}
src_install() {

View File

@ -1,21 +1,21 @@
# Copyright 1999-2012 Gentoo Foundation
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=4
EAPI=6
inherit eutils linux-info toolchain-funcs
inherit epatch linux-info toolchain-funcs
DESCRIPTION="utility to administer the IP virtual server services"
HOMEPAGE="http://linuxvirtualserver.org/"
SRC_URI="http://www.linuxvirtualserver.org/software/kernel-2.6/${P}.tar.gz"
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"
KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
IUSE="static-libs"
RDEPEND=">=sys-libs/ncurses-5.2
dev-libs/libnl:1.1
RDEPEND=">=sys-libs/ncurses-5.2:*
dev-libs/libnl:=
>=dev-libs/popt-1.16"
DEPEND="${RDEPEND}
virtual/pkgconfig"
@ -28,18 +28,24 @@ pkg_pretend() {
}
src_prepare() {
epatch "${FILESDIR}"/${P}-buildsystem.patch
epatch "${FILESDIR}/${P}-stack_smashing.patch" # bug 371903
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." \
INCLUDE="-I.. -I. ${libnl_include}" \
CC="$(tc-getCC)" \
HAVE_NL=1 \
STATIC_LIB=${STATIC} \
POPT_LIB="$(pkg-config --libs popt)"
STATIC=${STATIC} \
POPT_LIB="$($(tc-getPKG_CONFIG) --libs popt)"
}
src_install() {

View File

@ -1,12 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>cluster@gentoo.org</email>
<name>Gentoo Cluster Project</name>
</maintainer>
<longdescription>
Administration tools for linux virtual server clusters
</longdescription>
</pkgmetadata>