parent
430f26986a
commit
77858c4f37
@ -1,23 +1,23 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA512
|
||||
|
||||
MANIFEST Manifest.files.gz 29267 BLAKE2B f6e9da095dfda204606a27b98551880cc6b301d244882213b34d8c29bb9bffee08c3a2b795839b9ecf7efa1562f80edae21f167005bd02949ce27221307529d3 SHA512 d2886789585b7929c2989b3b61539971b99e381dc99ace4270c18e768280c3dadf4c00b4813d455ff61fce6d473c7144a74eebdc1fa093077fe659ae7f73447b
|
||||
TIMESTAMP 2021-05-11T04:38:58Z
|
||||
MANIFEST Manifest.files.gz 29287 BLAKE2B dfb9fecd570d2d422dbc266e5fac35ab7466750d6f61110a6c762d0619e88ffc9d3247dac1c3b8358ead1cdedcc69b66bbd9061f3d21492aa45d07043d87414c SHA512 2ef2aa1f6f09d57b166c06eabf2003c5713b86941982f22eece878496c708bcb08a6fe038be038035954508393cad4f3f359495a6fbb7990173754482ec429d5
|
||||
TIMESTAMP 2021-05-12T05:38:55Z
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmCaCmJfFIAAAAAALgAo
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmCbae9fFIAAAAAALgAo
|
||||
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
|
||||
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
|
||||
klBUjA/9H/SCdoTjkTdCR/WY4zBH7YuVlHZGlHcVMdCBMDQFP4eXbAyXIsHUv1Ho
|
||||
cUnkNSAIJNqbQz4E2tirfkmUXlxW0aCnYH3QOCoQLzq3Rpx/UwJRqMcaUWEpO+GC
|
||||
aBoJEM7MiGVUsdrbhQXHEDto7MOW2JJ7q3xBcSLK+YfSjY11+CUWChscBwUnI14J
|
||||
47ZxV/+7SCqkw3ALtrNv74BjzxK8uB+BlHBT0KdMLNxHtjTXSwYg43nWcDxHwN03
|
||||
7PwdhQ3M667ZCXovqDkN0SxS6VLq7RQQDgdb/FV27P5TE4oHfoX/NKwOEfV1iKr5
|
||||
6cFCfexenNH9Aq/KX/RFlqFD3mhs8GNQH8VpYHMAdmvWoQkkeCbHmi8X26HbE95m
|
||||
TVsGvWxAWOzinUDoy7ukPuvE2uYuI/BnhkJ+BcSAxSypCpRhRjOs4Hq9RmiVUJmL
|
||||
iCpiSAXYa1SOfEFo/MtKa1chSjVAwNN60HbHAgDZ1socdqew+Sp8GlZGk+HZa5m4
|
||||
DbeKvX/s8UISzWUByDKJ5nQsbED5n1cqBexmshNTE7r3yQ6aP5ImbqblnZTgXN/J
|
||||
Sp640wVS1jiBShv6a82ZH5KRJJNG/ZmQU8dIWfYDdsEIBoPF3+Vkydisa65ZHUJO
|
||||
M3JnkTftkgvtz94bgSK7kvNjYyX8O63nvezfFurMI1gQ/RawTpc=
|
||||
=3Tz/
|
||||
klCBcg/8CNuAsMRvr+WRiTsbRTD+viD/3Q/J6eajWUJwXMyQPPZC9g33+M5RKoj2
|
||||
Z5r7jisPs22WTfIOaZTFHcMGNkl+nErDe9YxRE4y3i99QCz7AgPrYzRngA/yI8fR
|
||||
xSPYuLwSW+AQF2MnXVLhLd/jydeXPDPfjKiOEemBlORBv/ymtTlkZajo3wC1vsoL
|
||||
dMQwr4JNe5jg0mduBNr8+W8Vmwg5qxIdOii38dV+48w6rsRqi0Iew4dAZD7s+Haj
|
||||
1LVKZp+QmeLlDs+C4DV0pjPis3vfggxnLDFi+5RdLWyx/LMGxzAJKbSfEGvVCmPR
|
||||
79vbZEuCd/5+784Xwm/RiDDlrRcUDSeY2CZK7ri/jX6151nHvZ8TyN/BdbV+eHFQ
|
||||
Vcj7XlWiDCBRMJVPliHIEvod3u3qlNPAzwrXOwuhL5LjQ9DPhzxsodE6Nd/OebC0
|
||||
IDKLKbyNrtef1lPE1qac61FayjjeRI5Ybi95z3Ld4VFz0IrOzfJpUBahgCK65sBP
|
||||
44o0ezJyN7ZbAccKpCZ/TPYxe+Imzpf3F5ZyJo8m5+/FlXLjX5bMvOPfQfQHjqUs
|
||||
umKRdoRokTyA3NPQc1OJDPJx/5NCSX2MNFQIta7ndtI7h95umM6pXRdjxrFRfJd5
|
||||
QpdgLl90hQe0vMwmW8sByI7sYmgCRiZF4I5fjsqmrngXzr5220Q=
|
||||
=0tMf
|
||||
-----END PGP SIGNATURE-----
|
||||
|
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,5 @@
|
||||
DIST github-backup-utils-2.22.0.tar.gz 102576 BLAKE2B ce9007c8a5d2843ccc2b3d11b03c13840b89d6ae7906d63420cc0e18191766c92c91e1072723439610ae8bdfdd0174601d1e3b7211cd6a1c9a748f9f793ff760 SHA512 e77b4afc6f90b16caf61dc4313787dab0751590b4819dca2d7e21acd0ca774d19ea359171b76f2892ca0fb4f86fd4240e77b00e107de79d496fea429fb12cee8
|
||||
DIST github-backup-utils-3.0.0.tar.gz 104088 BLAKE2B f01229e6b152231eb832dec8bef41bb158cc200bbdd3c59c1abab299c572902efe6d27d093491bd8b0bf8f3e834d2938eb0127d5f28700ba75dcbdbcc8a21bb8 SHA512 e86420ef9d86d44560e27e00361ff1bb8ba7c15fb116ad9981e3196bc4c7c25bcff9a9f7dc8dae9bbbb9b2f3380b434199dbbe1ef7db5b1ba04ec1233aec320d
|
||||
EBUILD github-backup-utils-2.22.0.ebuild 1124 BLAKE2B 0130f16c1e0175c743f4588485315e3080d073f5ae2c77a489191b51bd2c340ed070208ccebd4fd81b48e384ba4aa0d96ac8b7addc44ba3150749c280fc67809 SHA512 26355f99664a67b005a5063d1c51dbb52890cee9353bf9ee0e9d081cf4431d2815b4866d74a0366770c7341062cb2e9bd00b8dae0311d3e70aea0e32f17697b4
|
||||
EBUILD github-backup-utils-3.0.0.ebuild 1126 BLAKE2B 40314bede883af05f54cf146541594e7bb484fe17c63f7df17f61b1c934b84b7b7f4ef9de0673586c729fa019939725c85ea4b30e32d60d08e14b51cfde29e8b SHA512 7518f4fc52ba40b49848d66d95cbcd16796045b1ba8becd76c1e0f8617295142dbae32ef8f60dd8a4a3b6d952788f20f7be40b1c599c798829e7df86f0945c4b
|
||||
MISC metadata.xml 342 BLAKE2B 9f590d0c03e75e395500a57d1b99020742fb9fc04835b6fca8a896435dec7ba274204df2c5356ec1ef101f721a4bafdb848299c57b209c8d9aa41efdeb674e8f SHA512 5a9f0cb678377962ec6e4cf33ed40423e568f15cb71dfe5dd87e427a21584043e5698bbb2baa5b77907bf8f15c9ad8cfa8b05b4fdcdf2c8876ceb968afcb2d07
|
||||
|
@ -0,0 +1,56 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# Python3 support: https://github.com/github/backup-utils/pull/627
|
||||
PYTHON_COMPAT=(python3_{7,8,9})
|
||||
inherit python-any-r1
|
||||
|
||||
DESCRIPTION="Backup and recovery utilities for GitHub Enterprise"
|
||||
HOMEPAGE="https://github.com/github/backup-utils"
|
||||
SRC_URI="https://github.com/github/backup-utils/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# moreutils parallel is now used for speedups in main code:
|
||||
# https://github.com/github/backup-utils/pull/635
|
||||
RDEPEND="net-misc/rsync
|
||||
sys-apps/moreutils"
|
||||
|
||||
# tests invoke parallel & rsync
|
||||
DEPEND="test? (
|
||||
${RDEPEND}
|
||||
dev-util/checkbashisms
|
||||
${PYTHON_DEPS}
|
||||
)"
|
||||
|
||||
MY_PN="${PN/#github-/}"
|
||||
S="${WORKDIR}/${MY_PN}-${PV}"
|
||||
|
||||
src_compile() {
|
||||
:;
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin bin/*
|
||||
insinto usr/share/${PN}
|
||||
doins share/${PN}/version
|
||||
|
||||
exeinto usr/share/${PN}
|
||||
doexe share/${PN}/bm.sh
|
||||
doexe share/${PN}/ghe-*
|
||||
|
||||
insinto etc/${PN}
|
||||
newins backup.config-example backup.config
|
||||
|
||||
dodoc -r docs/*
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake test
|
||||
}
|
@ -0,0 +1,88 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit java-pkg-2
|
||||
|
||||
MY_PN="${PN%-bin}"
|
||||
MY_P="${MY_PN}-${PV}"
|
||||
|
||||
DESCRIPTION="Tool for managing events and logs"
|
||||
HOMEPAGE="https://www.elastic.co/products/logstash"
|
||||
SRC_URI="x-pack? ( https://artifacts.elastic.co/downloads/${MY_PN}/${MY_P}-linux-x86_64.tar.gz )
|
||||
!x-pack? ( https://artifacts.elastic.co/downloads/${MY_PN}/${MY_PN}-oss-${PV}-linux-x86_64.tar.gz )"
|
||||
|
||||
# source: LICENSE.txt and NOTICE.txt
|
||||
LICENSE="Apache-2.0 MIT x-pack? ( Elastic )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="x-pack"
|
||||
|
||||
RESTRICT="strip"
|
||||
QA_PREBUILT="opt/logstash/vendor/jruby/lib/jni/*/libjffi*.so"
|
||||
|
||||
RDEPEND="acct-group/logstash
|
||||
acct-user/logstash
|
||||
virtual/jre"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
local d
|
||||
for d in aarch64-Linux arm-Linux Darwin i386-Linux i386-SunOS \
|
||||
i386-Windows mips64el-Linux ppc64-AIX ppc64le-Linux ppc64-Linux \
|
||||
ppc-AIX sparcv9-Linux sparcv9-SunOS x86_64-DragonFlyBSD \
|
||||
x86_64-FreeBSD x86_64-OpenBSD x86_64-SunOS x86_64-Windows; do
|
||||
rm -r vendor/jruby/lib/jni/$d || die
|
||||
done
|
||||
|
||||
# remove bundled java
|
||||
rm -r jdk || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
keepdir /etc/"${MY_PN}"/{conf.d,patterns,plugins}
|
||||
keepdir "/var/log/${MY_PN}"
|
||||
|
||||
insinto "/usr/share/${MY_PN}"
|
||||
newins "${FILESDIR}/agent.conf.sample" agent.conf
|
||||
|
||||
rm -v config/{pipelines.yml,startup.options} || die
|
||||
insinto /etc/${MY_PN}
|
||||
doins -r config/.
|
||||
doins "${FILESDIR}/pipelines.yml"
|
||||
rm -rv config data || die
|
||||
|
||||
insinto "/opt/${MY_PN}"
|
||||
doins -r .
|
||||
fperms 0755 "/opt/${MY_PN}/bin/${MY_PN}" "/opt/${MY_PN}/vendor/jruby/bin/jruby" "/opt/${MY_PN}/bin/logstash-plugin"
|
||||
|
||||
newconfd "${FILESDIR}/${MY_PN}.confd-r2" "${MY_PN}"
|
||||
newinitd "${FILESDIR}/${MY_PN}.initd-r2" "${MY_PN}"
|
||||
|
||||
insinto /usr/share/eselect/modules
|
||||
doins "${FILESDIR}"/logstash-plugin.eselect
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
ewarn "Self installed plugins are removed during Logstash upgrades (Bug #622602)"
|
||||
ewarn "Install the plugins via eselect module that will automatically re-install"
|
||||
ewarn "all self installed plugins after Logstash upgrades."
|
||||
elog
|
||||
elog "Installing plugins:"
|
||||
elog "eselect logstash-plugin install logstash-output-gelf"
|
||||
elog
|
||||
|
||||
elog "Reinstalling self installed plugins (installed via eselect module):"
|
||||
eselect logstash-plugin reinstall
|
||||
|
||||
elog
|
||||
elog "Sample configuration:"
|
||||
elog "${EROOT}/usr/share/${MY_PN}"
|
||||
elog
|
||||
elog "The default pipeline configuration expects the configuration(s) to be found in:"
|
||||
elog "${EROOT}/etc/logstash/conf.d/*.conf"
|
||||
}
|
@ -1,320 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index e9b4183fc..1f8f16c13 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -331,8 +331,7 @@ endif()
|
||||
add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} -j $$(nproc) --output-on-failure)
|
||||
|
||||
set(IMPORTANT_WARNINGS
|
||||
- -Wshadow
|
||||
- -fcommon)
|
||||
+ -Wshadow)
|
||||
|
||||
set(ACCEPTABLE_WARNINGS
|
||||
-Wno-stack-protector
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 8b24eeaed..86c090638 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -54,8 +54,7 @@ AM_CPPFLAGS = -I$(top_srcdir)/lib -I$(top_srcdir)/modules -I$(top_builddir)/lib
|
||||
|
||||
# Important warnings
|
||||
AM_CFLAGS = \
|
||||
- -Wshadow \
|
||||
- -fcommon
|
||||
+ -Wshadow
|
||||
|
||||
# Acceptable warnings
|
||||
AM_CFLAGS += \
|
||||
diff --git a/lib/logmsg/tests/test_log_message.c b/lib/logmsg/tests/test_log_message.c
|
||||
index 245568ce5..e51d78b94 100644
|
||||
--- a/lib/logmsg/tests/test_log_message.c
|
||||
+++ b/lib/logmsg/tests/test_log_message.c
|
||||
@@ -32,6 +32,8 @@
|
||||
#include <stdlib.h>
|
||||
#include <glib/gprintf.h>
|
||||
|
||||
+MsgFormatOptions parse_options;
|
||||
+
|
||||
typedef struct _LogMessageTestParams
|
||||
{
|
||||
LogMessage *message;
|
||||
@@ -151,7 +153,7 @@ void
|
||||
setup(void)
|
||||
{
|
||||
app_startup();
|
||||
- init_and_load_syslogformat_module();
|
||||
+ init_parse_options_and_load_syslogformat(&parse_options);
|
||||
}
|
||||
|
||||
void
|
||||
diff --git a/libtest/cr_template.c b/libtest/cr_template.c
|
||||
index 35e47aa3f..4f0913368 100644
|
||||
--- a/libtest/cr_template.c
|
||||
+++ b/libtest/cr_template.c
|
||||
@@ -34,10 +34,12 @@
|
||||
|
||||
#include "msg_parse_lib.h"
|
||||
|
||||
+static MsgFormatOptions parse_options;
|
||||
+
|
||||
void
|
||||
init_template_tests(void)
|
||||
{
|
||||
- init_and_load_syslogformat_module();
|
||||
+ init_parse_options_and_load_syslogformat(&parse_options);
|
||||
}
|
||||
|
||||
void
|
||||
diff --git a/libtest/msg_parse_lib.c b/libtest/msg_parse_lib.c
|
||||
index ae0d1654b..b3c7cb652 100644
|
||||
--- a/libtest/msg_parse_lib.c
|
||||
+++ b/libtest/msg_parse_lib.c
|
||||
@@ -27,15 +27,13 @@
|
||||
|
||||
#include <criterion/criterion.h>
|
||||
|
||||
-MsgFormatOptions parse_options;
|
||||
-
|
||||
void
|
||||
-init_and_load_syslogformat_module(void)
|
||||
+init_parse_options_and_load_syslogformat(MsgFormatOptions *parse_options)
|
||||
{
|
||||
configuration = cfg_new_snippet();
|
||||
cfg_load_module(configuration, "syslogformat");
|
||||
- msg_format_options_defaults(&parse_options);
|
||||
- msg_format_options_init(&parse_options, configuration);
|
||||
+ msg_format_options_defaults(parse_options);
|
||||
+ msg_format_options_init(parse_options, configuration);
|
||||
}
|
||||
|
||||
void
|
||||
diff --git a/libtest/msg_parse_lib.h b/libtest/msg_parse_lib.h
|
||||
index d86f178c2..5a9b4277b 100644
|
||||
--- a/libtest/msg_parse_lib.h
|
||||
+++ b/libtest/msg_parse_lib.h
|
||||
@@ -30,9 +30,7 @@
|
||||
#include "cfg.h"
|
||||
#include "logmsg/logmsg.h"
|
||||
|
||||
-extern MsgFormatOptions parse_options;
|
||||
-
|
||||
-void init_and_load_syslogformat_module(void);
|
||||
+void init_parse_options_and_load_syslogformat(MsgFormatOptions *parse_options);
|
||||
void deinit_syslogformat_module(void);
|
||||
|
||||
void assert_log_messages_equal(LogMessage *log_message_a, LogMessage *log_message_b);
|
||||
diff --git a/libtest/proto_lib.c b/libtest/proto_lib.c
|
||||
index b69195865..105e390b9 100644
|
||||
--- a/libtest/proto_lib.c
|
||||
+++ b/libtest/proto_lib.c
|
||||
@@ -23,7 +23,7 @@
|
||||
*/
|
||||
|
||||
#include "proto_lib.h"
|
||||
-#include "msg_parse_lib.h"
|
||||
+#include "cfg.h"
|
||||
|
||||
#include <string.h>
|
||||
#include <criterion/criterion.h>
|
||||
@@ -164,7 +164,8 @@ assert_proto_server_fetch_ignored_eof(LogProtoServer *proto)
|
||||
void
|
||||
init_proto_tests(void)
|
||||
{
|
||||
- init_and_load_syslogformat_module();
|
||||
+ configuration = cfg_new_snippet();
|
||||
+ cfg_load_module(configuration, "syslogformat");
|
||||
log_proto_server_options_defaults(&proto_server_options);
|
||||
}
|
||||
|
||||
@@ -172,5 +173,7 @@ void
|
||||
deinit_proto_tests(void)
|
||||
{
|
||||
log_proto_server_options_destroy(&proto_server_options);
|
||||
- deinit_syslogformat_module();
|
||||
+
|
||||
+ if (configuration)
|
||||
+ cfg_free(configuration);
|
||||
}
|
||||
diff --git a/modules/linux-kmsg-format/tests/test_linux_format_kmsg.c b/modules/linux-kmsg-format/tests/test_linux_format_kmsg.c
|
||||
index 79a4b97ad..d4d0d45a9 100644
|
||||
--- a/modules/linux-kmsg-format/tests/test_linux_format_kmsg.c
|
||||
+++ b/modules/linux-kmsg-format/tests/test_linux_format_kmsg.c
|
||||
@@ -31,6 +31,8 @@
|
||||
|
||||
#include <criterion/criterion.h>
|
||||
|
||||
+MsgFormatOptions parse_options;
|
||||
+
|
||||
static LogMessage *
|
||||
kmsg_parse_message(const gchar *raw_message_str)
|
||||
{
|
||||
diff --git a/modules/python/tests/test_python_logmsg.c b/modules/python/tests/test_python_logmsg.c
|
||||
index 9a0343b07..51651ee9d 100644
|
||||
--- a/modules/python/tests/test_python_logmsg.c
|
||||
+++ b/modules/python/tests/test_python_logmsg.c
|
||||
@@ -30,6 +30,8 @@
|
||||
static PyObject *_python_main;
|
||||
static PyObject *_python_main_dict;
|
||||
|
||||
+MsgFormatOptions parse_options;
|
||||
+
|
||||
static void
|
||||
_py_init_interpreter(void)
|
||||
{
|
||||
@@ -95,7 +97,7 @@ void setup(void)
|
||||
{
|
||||
app_startup();
|
||||
|
||||
- init_and_load_syslogformat_module();
|
||||
+ init_parse_options_and_load_syslogformat(&parse_options);
|
||||
|
||||
_py_init_interpreter();
|
||||
_init_python_main();
|
||||
diff --git a/modules/stardate/tests/test_stardate.c b/modules/stardate/tests/test_stardate.c
|
||||
index e48cfb6cd..7d55fc1d0 100644
|
||||
--- a/modules/stardate/tests/test_stardate.c
|
||||
+++ b/modules/stardate/tests/test_stardate.c
|
||||
@@ -33,6 +33,8 @@
|
||||
|
||||
#include "msg_parse_lib.h"
|
||||
|
||||
+MsgFormatOptions parse_options;
|
||||
+
|
||||
void
|
||||
stardate_assert(const gchar *msg_str, const int precision, const gchar *expected)
|
||||
{
|
||||
@@ -58,6 +60,7 @@ void
|
||||
setup(void)
|
||||
{
|
||||
app_startup();
|
||||
+ init_parse_options_and_load_syslogformat(&parse_options);
|
||||
init_template_tests();
|
||||
cfg_load_module(configuration, "stardate");
|
||||
}
|
||||
@@ -66,6 +69,7 @@ void
|
||||
teardown(void)
|
||||
{
|
||||
deinit_template_tests();
|
||||
+ deinit_syslogformat_module();
|
||||
app_shutdown();
|
||||
}
|
||||
|
||||
diff --git a/persist-tool/add.h b/persist-tool/add.h
|
||||
index 981e0cc61..2d3524cb0 100644
|
||||
--- a/persist-tool/add.h
|
||||
+++ b/persist-tool/add.h
|
||||
@@ -32,8 +32,8 @@
|
||||
#include "cfg.h"
|
||||
#include "persist-tool.h"
|
||||
|
||||
-gchar *persist_state_dir;
|
||||
-gchar *persist_state_name;
|
||||
+extern gchar *persist_state_dir;
|
||||
+extern gchar *persist_state_name;
|
||||
|
||||
gint add_main(int argc, char *argv[]);
|
||||
|
||||
diff --git a/persist-tool/generate.h b/persist-tool/generate.h
|
||||
index 237a8ae24..34f7dfec9 100644
|
||||
--- a/persist-tool/generate.h
|
||||
+++ b/persist-tool/generate.h
|
||||
@@ -32,8 +32,8 @@
|
||||
#include "persist-state.h"
|
||||
#include "cfg.h"
|
||||
|
||||
-gboolean force_generate;
|
||||
-gchar *generate_output_dir;
|
||||
+extern gboolean force_generate;
|
||||
+extern gchar *generate_output_dir;
|
||||
|
||||
gint generate_main(int argc, char *argv[]);
|
||||
|
||||
diff --git a/persist-tool/persist-tool.c b/persist-tool/persist-tool.c
|
||||
index fd96c856d..4e4adc88f 100644
|
||||
--- a/persist-tool/persist-tool.c
|
||||
+++ b/persist-tool/persist-tool.c
|
||||
@@ -135,11 +135,17 @@ void persist_tool_free(PersistTool *self)
|
||||
g_free(self);
|
||||
}
|
||||
|
||||
+gchar *persist_state_dir;
|
||||
+gchar *persist_state_name;
|
||||
+gboolean force_generate;
|
||||
+gchar *generate_output_dir;
|
||||
+
|
||||
static GOptionEntry dump_options[] =
|
||||
{
|
||||
{ NULL, 0, 0, G_OPTION_ARG_NONE, NULL, NULL }
|
||||
};
|
||||
|
||||
+
|
||||
static GOptionEntry add_options[] =
|
||||
{
|
||||
{ "output-dir", 'o', 0, G_OPTION_ARG_STRING, &persist_state_dir, "The directory where persist file is located.", "<directory>" },
|
||||
diff --git a/tests/unit/test_clone_logmsg.c b/tests/unit/test_clone_logmsg.c
|
||||
index 57c0b181f..7b738b1e5 100644
|
||||
--- a/tests/unit/test_clone_logmsg.c
|
||||
+++ b/tests/unit/test_clone_logmsg.c
|
||||
@@ -38,6 +38,8 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
+MsgFormatOptions parse_options;
|
||||
+
|
||||
void
|
||||
assert_new_log_message_attributes(LogMessage *log_message)
|
||||
{
|
||||
@@ -69,7 +71,7 @@ void
|
||||
setup(void)
|
||||
{
|
||||
app_startup();
|
||||
- init_and_load_syslogformat_module();
|
||||
+ init_parse_options_and_load_syslogformat(&parse_options);
|
||||
}
|
||||
|
||||
void
|
||||
diff --git a/tests/unit/test_matcher.c b/tests/unit/test_matcher.c
|
||||
index a92c8e458..d43755bea 100644
|
||||
--- a/tests/unit/test_matcher.c
|
||||
+++ b/tests/unit/test_matcher.c
|
||||
@@ -31,6 +31,8 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
+MsgFormatOptions parse_options;
|
||||
+
|
||||
static LogMessage *
|
||||
_create_log_message(const gchar *log)
|
||||
{
|
||||
@@ -128,7 +130,7 @@ void
|
||||
setup(void)
|
||||
{
|
||||
app_startup();
|
||||
- init_and_load_syslogformat_module();
|
||||
+ init_parse_options_and_load_syslogformat(&parse_options);
|
||||
}
|
||||
|
||||
void
|
||||
diff --git a/tests/unit/test_msgparse.c b/tests/unit/test_msgparse.c
|
||||
index 6b9e1045f..0ed91f638 100644
|
||||
--- a/tests/unit/test_msgparse.c
|
||||
+++ b/tests/unit/test_msgparse.c
|
||||
@@ -49,6 +49,8 @@ struct sdata_pair
|
||||
struct sdata_pair ignore_sdata_pairs[] = { { NULL, NULL } };
|
||||
struct sdata_pair empty_sdata_pairs[] = { { NULL, NULL } };
|
||||
|
||||
+MsgFormatOptions parse_options;
|
||||
+
|
||||
static unsigned long
|
||||
_absolute_value(signed long diff)
|
||||
{
|
||||
@@ -130,7 +132,7 @@ setup(void)
|
||||
app_startup();
|
||||
setenv("TZ", "MET-1METDST", TRUE);
|
||||
tzset();
|
||||
- init_and_load_syslogformat_module();
|
||||
+ init_parse_options_and_load_syslogformat(&parse_options);
|
||||
/* Fri Feb 8 09:37:49 CET 2019 */
|
||||
fake_time(1549615069);
|
||||
}
|
@ -1,63 +0,0 @@
|
||||
diff --git a/lib/compat/glib.c b/lib/compat/glib.c
|
||||
index 8b6e52447..5b8ed8891 100644
|
||||
--- a/lib/compat/glib.c
|
||||
+++ b/lib/compat/glib.c
|
||||
@@ -315,3 +315,18 @@ slng_g_hash_table_insert(GHashTable *hash_table, gpointer key, gpointer value)
|
||||
return exists;
|
||||
}
|
||||
#endif
|
||||
+
|
||||
+
|
||||
+#if !GLIB_CHECK_VERSION(2, 64, 0)
|
||||
+gunichar
|
||||
+g_utf8_get_char_validated_fixed(const gchar *p, gssize max_len)
|
||||
+{
|
||||
+ // https://github.com/GNOME/glib/commit/1963821a57584b4674c20895e8a5adccd2d9effd
|
||||
+
|
||||
+#undef g_utf8_get_char_validated
|
||||
+ if (*p == '\0' && max_len > 0)
|
||||
+ return (gunichar)-2;
|
||||
+
|
||||
+ return g_utf8_get_char_validated(p, max_len);
|
||||
+}
|
||||
+#endif
|
||||
diff --git a/lib/compat/glib.h b/lib/compat/glib.h
|
||||
index a9782ed2d..0fbdbd12d 100644
|
||||
--- a/lib/compat/glib.h
|
||||
+++ b/lib/compat/glib.h
|
||||
@@ -109,4 +109,9 @@ gchar *g_base64_encode_fixed(const guchar *data, gsize len);
|
||||
gboolean slng_g_hash_table_insert (GHashTable *hash_table, gpointer key, gpointer value);
|
||||
#endif
|
||||
|
||||
+#if !GLIB_CHECK_VERSION(2, 64, 0)
|
||||
+#define g_utf8_get_char_validated g_utf8_get_char_validated_fixed
|
||||
+gunichar g_utf8_get_char_validated_fixed (const gchar *p, gssize max_len);
|
||||
+#endif
|
||||
+
|
||||
#endif
|
||||
diff --git a/modules/cef/tests/test-format-cef-extension.c b/modules/cef/tests/test-format-cef-extension.c
|
||||
index d7f6ee3c1..f4233f96f 100644
|
||||
--- a/modules/cef/tests/test-format-cef-extension.c
|
||||
+++ b/modules/cef/tests/test-format-cef-extension.c
|
||||
@@ -104,7 +104,7 @@ Test(format_cef, test_null_in_value)
|
||||
|
||||
configuration->template_options.on_error = ON_ERROR_DROP_MESSAGE | ON_ERROR_SILENT;
|
||||
log_msg_set_value_by_name(msg, ".cef.k", "a\0b", 3);
|
||||
- assert_template_format_msg("$(format-cef-extension --subkeys .cef.)", "k=a\\u0000b", msg);
|
||||
+ assert_template_format_msg("$(format-cef-extension --subkeys .cef.)", "k=a\\x00b", msg);
|
||||
log_msg_unref(msg);
|
||||
}
|
||||
|
||||
diff --git a/modules/json/tests/test_format_json.c b/modules/json/tests/test_format_json.c
|
||||
index 92c61e9f1..1224ddb33 100644
|
||||
--- a/modules/json/tests/test_format_json.c
|
||||
+++ b/modules/json/tests/test_format_json.c
|
||||
@@ -55,7 +55,7 @@ Test(format_json, test_format_json)
|
||||
assert_template_format("$(format-json MSG=$escaping)",
|
||||
"{\"MSG\":\"binary stuff follows \\\"\\\\xad árvíztűrőtükörfúrógép\"}");
|
||||
assert_template_format("$(format-json MSG=$escaping2)", "{\"MSG\":\"\\\\xc3\"}");
|
||||
- assert_template_format("$(format-json MSG=$null)", "{\"MSG\":\"binary\\u0000stuff\"}");
|
||||
+ assert_template_format("$(format-json MSG=$null)", "{\"MSG\":\"binary\\\\x00stuff\"}");
|
||||
assert_template_format_with_context("$(format-json MSG=$MSG)",
|
||||
"{\"MSG\":\"árvíztűrőtükörfúrógép\"}{\"MSG\":\"árvíztűrőtükörfúrógép\"}");
|
||||
assert_template_format("$(format-json --scope rfc3164)",
|
@ -1,170 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7,8} )
|
||||
inherit autotools python-single-r1 systemd
|
||||
|
||||
MY_PV_MM=$(ver_cut 1-2)
|
||||
DESCRIPTION="syslog replacement with advanced filtering features"
|
||||
HOMEPAGE="https://syslog-ng.com/open-source-log-management"
|
||||
SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+ LGPL-2.1+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
IUSE="amqp caps dbi geoip2 http ipv6 json kafka mongodb pacct python redis smtp snmp test spoof-source systemd tcpd"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.10.1:2
|
||||
>=dev-libs/ivykis-0.42.4
|
||||
>=dev-libs/libpcre-6.1:=
|
||||
!dev-libs/eventlog
|
||||
amqp? ( >=net-libs/rabbitmq-c-0.8.0:=[ssl] )
|
||||
caps? ( sys-libs/libcap )
|
||||
dbi? ( >=dev-db/libdbi-0.9.0 )
|
||||
geoip2? ( dev-libs/libmaxminddb:= )
|
||||
http? ( net-misc/curl )
|
||||
json? ( >=dev-libs/json-c-0.9:= )
|
||||
kafka? ( >=dev-libs/librdkafka-1.0.0:= )
|
||||
mongodb? ( >=dev-libs/mongo-c-driver-1.2.0 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
redis? ( >=dev-libs/hiredis-0.11.0:= )
|
||||
smtp? ( net-libs/libesmtp )
|
||||
snmp? ( net-analyzer/net-snmp )
|
||||
spoof-source? ( net-libs/libnet:1.1= )
|
||||
systemd? ( sys-apps/systemd:= )
|
||||
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
|
||||
dev-libs/openssl:0="
|
||||
DEPEND="${RDEPEND}
|
||||
test? ( dev-libs/criterion )"
|
||||
BDEPEND="
|
||||
sys-devel/flex
|
||||
virtual/pkgconfig"
|
||||
|
||||
DOCS=( AUTHORS NEWS.md CONTRIBUTING.md contrib/syslog-ng.conf.{HP-UX,RedHat,SunOS,doc}
|
||||
contrib/syslog2ng "${T}/syslog-ng.conf.gentoo.hardened"
|
||||
"${T}/syslog-ng.logrotate.hardened" "${FILESDIR}/README.hardened" )
|
||||
|
||||
PATCHES=( "${FILESDIR}/patches/syslog-ng-glib-2.64-support.patch" )
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local f
|
||||
|
||||
use python && python_fix_shebang .
|
||||
|
||||
# remove bundled libs
|
||||
rm -r lib/ivykis || die
|
||||
|
||||
# drop scl modules requiring json
|
||||
if use !json; then
|
||||
sed -i -r '/cim|elasticsearch|ewmm|graylog2|loggly|logmatic|netskope|nodejs|osquery|slack/d' scl/Makefile.am || die
|
||||
fi
|
||||
|
||||
# drop scl modules requiring http
|
||||
if use !http; then
|
||||
sed -i -r '/slack|telegram/d' scl/Makefile.am || die
|
||||
fi
|
||||
|
||||
# use gentoo default path
|
||||
if use systemd; then
|
||||
sed -e 's@/etc/syslog-ng.conf@/etc/syslog-ng/syslog-ng.conf@g;s@/var/run@/run@g' \
|
||||
-i contrib/systemd/syslog-ng@default || die
|
||||
fi
|
||||
|
||||
for f in syslog-ng.logrotate.hardened.in syslog-ng.logrotate.in; do
|
||||
sed \
|
||||
-e "s#@GENTOO_RESTART@#$(usex systemd "systemctl kill -s HUP syslog-ng@default" \
|
||||
"/etc/init.d/syslog-ng reload")#g" \
|
||||
"${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
|
||||
done
|
||||
|
||||
for f in syslog-ng.conf.gentoo.hardened.in \
|
||||
syslog-ng.conf.gentoo.in; do
|
||||
sed -e "s/@SYSLOGNG_VERSION@/${MY_PV_MM}/g" "${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
|
||||
done
|
||||
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--disable-docs
|
||||
--disable-java
|
||||
--disable-java-modules
|
||||
--disable-riemann
|
||||
--enable-manpages
|
||||
--localstatedir=/var/lib/syslog-ng
|
||||
--sysconfdir=/etc/syslog-ng
|
||||
--with-embedded-crypto
|
||||
--with-ivykis=system
|
||||
--with-module-dir=/usr/$(get_libdir)/syslog-ng
|
||||
--with-pidfile-dir=/var/run
|
||||
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
|
||||
$(use_enable amqp)
|
||||
$(usex amqp --with-librabbitmq-client=system --without-librabbitmq-client)
|
||||
$(use_enable caps linux-caps)
|
||||
$(use_enable dbi sql)
|
||||
$(use_enable geoip2)
|
||||
$(use_enable http)
|
||||
$(use_enable ipv6)
|
||||
$(use_enable json)
|
||||
$(use_enable kafka)
|
||||
$(use_enable mongodb)
|
||||
$(usex mongodb --with-mongoc=system "--without-mongoc --disable-legacy-mongodb-options")
|
||||
$(use_enable pacct)
|
||||
$(use_enable python)
|
||||
$(use_enable redis)
|
||||
$(use_enable smtp)
|
||||
$(use_enable snmp snmp-dest)
|
||||
$(use_enable spoof-source)
|
||||
$(use_enable systemd)
|
||||
$(use_enable tcpd tcp-wrapper)
|
||||
)
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
# Install default configuration
|
||||
insinto /etc/default
|
||||
doins contrib/systemd/syslog-ng@default
|
||||
|
||||
insinto /etc/syslog-ng
|
||||
newins "${T}/syslog-ng.conf.gentoo" syslog-ng.conf
|
||||
|
||||
insinto /etc/logrotate.d
|
||||
newins "${T}/syslog-ng.logrotate" syslog-ng
|
||||
|
||||
newinitd "${FILESDIR}/syslog-ng.rc" syslog-ng
|
||||
newconfd "${FILESDIR}/syslog-ng.confd" syslog-ng
|
||||
keepdir /etc/syslog-ng/patterndb.d /var/lib/syslog-ng
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
|
||||
use python && python_optimize
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# bug #355257
|
||||
if ! has_version app-admin/logrotate ; then
|
||||
elog "It is highly recommended that app-admin/logrotate be emerged to"
|
||||
elog "manage the log files. ${PN} installs a file in /etc/logrotate.d"
|
||||
elog "for logrotate to use."
|
||||
fi
|
||||
|
||||
if use systemd; then
|
||||
ewarn "The service file for systemd has changed to support multiple instances."
|
||||
ewarn "To start the default instance issue:"
|
||||
ewarn "# systemctl start syslog-ng@default"
|
||||
fi
|
||||
}
|
@ -1,171 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
inherit autotools python-single-r1 systemd
|
||||
|
||||
MY_PV_MM=$(ver_cut 1-2)
|
||||
DESCRIPTION="syslog replacement with advanced filtering features"
|
||||
HOMEPAGE="https://syslog-ng.com/open-source-log-management"
|
||||
SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+ LGPL-2.1+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="amqp caps dbi geoip2 http ipv6 json kafka mongodb pacct python redis smtp snmp test spoof-source systemd tcpd"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.10.1:2
|
||||
>=dev-libs/ivykis-0.42.4
|
||||
>=dev-libs/libpcre-6.1:=
|
||||
!dev-libs/eventlog
|
||||
amqp? ( >=net-libs/rabbitmq-c-0.8.0:=[ssl] )
|
||||
caps? ( sys-libs/libcap )
|
||||
dbi? ( >=dev-db/libdbi-0.9.0 )
|
||||
geoip2? ( dev-libs/libmaxminddb:= )
|
||||
http? ( net-misc/curl )
|
||||
json? ( >=dev-libs/json-c-0.9:= )
|
||||
kafka? ( >=dev-libs/librdkafka-1.0.0:= )
|
||||
mongodb? ( >=dev-libs/mongo-c-driver-1.2.0 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
redis? ( >=dev-libs/hiredis-0.11.0:= )
|
||||
smtp? ( net-libs/libesmtp )
|
||||
snmp? ( net-analyzer/net-snmp:0= )
|
||||
spoof-source? ( net-libs/libnet:1.1= )
|
||||
systemd? ( sys-apps/systemd:= )
|
||||
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
|
||||
dev-libs/openssl:0="
|
||||
DEPEND="${RDEPEND}
|
||||
test? ( dev-libs/criterion )"
|
||||
BDEPEND="
|
||||
sys-devel/flex
|
||||
virtual/pkgconfig"
|
||||
|
||||
DOCS=( AUTHORS NEWS.md CONTRIBUTING.md contrib/syslog-ng.conf.{HP-UX,RedHat,SunOS,doc}
|
||||
contrib/syslog2ng "${T}/syslog-ng.conf.gentoo.hardened"
|
||||
"${T}/syslog-ng.logrotate.hardened" "${FILESDIR}/README.hardened" )
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.28.1-net-snmp.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local f
|
||||
|
||||
use python && python_fix_shebang .
|
||||
|
||||
# remove bundled libs
|
||||
rm -r lib/ivykis || die
|
||||
|
||||
# drop scl modules requiring json
|
||||
if use !json; then
|
||||
sed -i -r '/cim|elasticsearch|ewmm|graylog2|loggly|logmatic|netskope|nodejs|osquery|slack/d' scl/Makefile.am || die
|
||||
fi
|
||||
|
||||
# drop scl modules requiring http
|
||||
if use !http; then
|
||||
sed -i -r '/slack|telegram/d' scl/Makefile.am || die
|
||||
fi
|
||||
|
||||
# use gentoo default path
|
||||
if use systemd; then
|
||||
sed -e 's@/etc/syslog-ng.conf@/etc/syslog-ng/syslog-ng.conf@g;s@/var/run@/run@g' \
|
||||
-i contrib/systemd/syslog-ng@default || die
|
||||
fi
|
||||
|
||||
for f in syslog-ng.logrotate.hardened.in syslog-ng.logrotate.in; do
|
||||
sed \
|
||||
-e "s#@GENTOO_RESTART@#$(usex systemd "systemctl kill -s HUP syslog-ng@default" \
|
||||
"/etc/init.d/syslog-ng reload")#g" \
|
||||
"${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
|
||||
done
|
||||
|
||||
for f in syslog-ng.conf.gentoo.hardened.in \
|
||||
syslog-ng.conf.gentoo.in; do
|
||||
sed -e "s/@SYSLOGNG_VERSION@/${MY_PV_MM}/g" "${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
|
||||
done
|
||||
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--disable-docs
|
||||
--disable-java
|
||||
--disable-java-modules
|
||||
--disable-riemann
|
||||
--enable-manpages
|
||||
--localstatedir=/var/lib/syslog-ng
|
||||
--sysconfdir=/etc/syslog-ng
|
||||
--with-embedded-crypto
|
||||
--with-ivykis=system
|
||||
--with-module-dir=/usr/$(get_libdir)/syslog-ng
|
||||
--with-pidfile-dir=/var/run
|
||||
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
|
||||
$(use_enable amqp)
|
||||
$(usex amqp --with-librabbitmq-client=system --without-librabbitmq-client)
|
||||
$(use_enable caps linux-caps)
|
||||
$(use_enable dbi sql)
|
||||
$(use_enable geoip2)
|
||||
$(use_enable http)
|
||||
$(use_enable ipv6)
|
||||
$(use_enable json)
|
||||
$(use_enable kafka)
|
||||
$(use_enable mongodb)
|
||||
$(usex mongodb --with-mongoc=system "--without-mongoc --disable-legacy-mongodb-options")
|
||||
$(use_enable pacct)
|
||||
$(use_enable python)
|
||||
$(use_enable redis)
|
||||
$(use_enable smtp)
|
||||
$(use_enable snmp afsnmp)
|
||||
$(use_enable spoof-source)
|
||||
$(use_enable systemd)
|
||||
$(use_enable tcpd tcp-wrapper)
|
||||
)
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
# Install default configuration
|
||||
insinto /etc/default
|
||||
doins contrib/systemd/syslog-ng@default
|
||||
|
||||
insinto /etc/syslog-ng
|
||||
newins "${T}/syslog-ng.conf.gentoo" syslog-ng.conf
|
||||
|
||||
insinto /etc/logrotate.d
|
||||
newins "${T}/syslog-ng.logrotate" syslog-ng
|
||||
|
||||
newinitd "${FILESDIR}/syslog-ng.rc" syslog-ng
|
||||
newconfd "${FILESDIR}/syslog-ng.confd" syslog-ng
|
||||
keepdir /etc/syslog-ng/patterndb.d /var/lib/syslog-ng
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
|
||||
use python && python_optimize
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# bug #355257
|
||||
if ! has_version app-admin/logrotate ; then
|
||||
elog "It is highly recommended that app-admin/logrotate be emerged to"
|
||||
elog "manage the log files. ${PN} installs a file in /etc/logrotate.d"
|
||||
elog "for logrotate to use."
|
||||
fi
|
||||
|
||||
if use systemd; then
|
||||
ewarn "The service file for systemd has changed to support multiple instances."
|
||||
ewarn "To start the default instance issue:"
|
||||
ewarn "# systemctl start syslog-ng@default"
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
AUX rpm2targz-9.0.0.5g-add-zstd-support.patch 719 BLAKE2B 0450ee5f7e6010db15f77d474da633fdab17c7b39657971bd64aebf89876a368c7bdbd4572e30a51825ae741efcad6f0845b10aed362c8502101d54485369cd5 SHA512 dd5ea497a2983c45f7c2055b7f47b911f86a5246b90bb1d55d8f75dcb1c9f25f2c20d75e7f19a3df65b62320e8397d465d25f5d5ea234a65230da4922b274079
|
||||
DIST rpm2targz-2021.03.16.tar.xz 6500 BLAKE2B fac1122fbfcab2b982ea6f5369b95b30814d438d0f853d846ef62a33ceaaf81d44b2a743bc20a3ef46defb63331bff06f9a268a5a805ecd899b11f86ec414bc2 SHA512 efd677642fbf73d4b8c90f338eea20452052f2bdc2b7a3a61c0e9215676575b5063aad733ec3ea4840baf281eb332db8f6fdeef600cc8a8aa7e208f2fa8ee599
|
||||
DIST rpm2targz-9.0.0.5g.tar.xz 5740 BLAKE2B 88c903119fc19bd1d2eec1ccc7616e05594465a0595b75be8ab8095b5404420a8a09ba8fb176ee21efa5df3b12d4436b60119a637f70910cc020bcb3dcc3833b SHA512 a595d23581bd396a3a00b6eae4cf6edca1c65b52510a02c7b162afc3d89f45026663a271279bb519741b4a35a0ee653fbfb124c5a7d6d921b466dc9236cbf549
|
||||
EBUILD rpm2targz-2021.03.16.ebuild 736 BLAKE2B 37fc22eb6bcad1c07faf10e84304c2b0bc7db776312fccbcc714092bd5f1617e363119c266ed7ea9fe8c45ec9fd4fd4c3324c8a13a4ed64c32d6456e05db8533 SHA512 7c13444bfe6af1cfb3a9ee95d4f554d1eb21e1b3b3bd78f55789ae7b9b20067d04ada59a60843cee6e037de0a8b11dee004f7a2a04a05fd951eb56810878ee61
|
||||
EBUILD rpm2targz-2021.03.16.ebuild 735 BLAKE2B ea5f063c9c9d375f9ccff3598b75733440e1f0f689bfa9d8420ea5d98bd188221f0da9ff6fcc0a5d0dd73a7e54565fb872adaaaf0d6ba446dc684ac29826463f SHA512 408cafd75fce7f7186ac71ec47cb4664727e52b5665c3beef30934c51e89d710fddb4d1d1a02768d5c9b4218d6d934af562df7d96aca6ee102754a173025fe95
|
||||
EBUILD rpm2targz-9.0.0.5g-r2.ebuild 791 BLAKE2B 29b329dc66c931358b9e6d378081d348900fb3191768b86b4283f27d3613b5ab84573e0688425f98b412bdf91f0fb865062cf3ac28ea94688f9584b5a4520e67 SHA512 ab2bac841a63959bd172fac9d08cf2b84f8945b7247307f4c56c68a159387bf1a006df8412bf9c0943d92cb14a2028ee6deadb7279673edf24af650b1a3ad5d0
|
||||
MISC metadata.xml 253 BLAKE2B 295e9d6d93aaa12af413972e1590c67087801cc09c9aa6b59d4606c0f4106d1dacf2baa9858559083b4c6d91beeef218d0729e8593a33788958da6d2897e8ce2 SHA512 54a9069aeb4165d2dff3d473c8001bc51613aac9dff3f7f5e9971a9891a737a31511ffa11cbd523febe581ac1d9de2bdf2f40410f0c4239138f2ccca3ef15555
|
||||
|
Binary file not shown.
@ -1,512 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
PYTHON_REQ_USE='ncurses,xml,threads(+)'
|
||||
|
||||
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
REPO="xen.git"
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
|
||||
S="${WORKDIR}/${REPO}"
|
||||
else
|
||||
KEYWORDS="amd64 ~arm ~arm64 x86"
|
||||
UPSTREAM_VER=2
|
||||
SECURITY_VER=29
|
||||
# xen-tools's gentoo patches tarball
|
||||
GENTOO_VER=21
|
||||
# xen-tools's gentoo patches version which apply to this specific ebuild
|
||||
GENTOO_GPV=1
|
||||
# xen-tools ovmf's patches
|
||||
OVMF_VER=
|
||||
|
||||
SEABIOS_VER="1.12.1"
|
||||
EDK2_COMMIT="06dc822d045c2bb42e497487935485302486e151"
|
||||
EDK2_OPENSSL_VERSION="1_1_1g"
|
||||
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
|
||||
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
|
||||
IPXE_COMMIT="1dd56dbd11082fb622c2ed21cfaced4f47d798a6"
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
[[ -n ${OVMF_VER} ]] && \
|
||||
OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
|
||||
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
|
||||
https://github.com/qemu/seabios/archive/rel-${SEABIOS_VER}.tar.gz -> seabios-${SEABIOS_VER}.tar.gz
|
||||
ipxe? ( http://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
|
||||
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
|
||||
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
|
||||
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
|
||||
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
|
||||
${OVMF_PATCHSET_URI} )
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
|
||||
S="${WORKDIR}/xen-${MY_PV}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Xen tools including QEMU and xl"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
DOCS=( README )
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
|
||||
# >=dev-lang/ocaml-4 stable
|
||||
# Masked in profiles/eapi-5-files instead
|
||||
IUSE="api debug doc flask +hvm +ipxe ocaml ovmf +pam pygrub python +qemu +qemu-traditional +rombios screen sdl static-libs system-ipxe system-qemu system-seabios"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
ipxe? ( rombios )
|
||||
ovmf? ( hvm )
|
||||
pygrub? ( python )
|
||||
rombios? ( hvm )
|
||||
system-ipxe? ( rombios )
|
||||
?? ( ipxe system-ipxe )
|
||||
?? ( qemu system-qemu )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
sys-apps/pciutils
|
||||
dev-libs/lzo:2
|
||||
dev-libs/glib:2
|
||||
dev-libs/yajl
|
||||
dev-libs/libaio
|
||||
dev-libs/libgcrypt:0
|
||||
sys-libs/zlib
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=sys-kernel/linux-headers-4.11
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/lxml[${PYTHON_MULTI_USEDEP}]
|
||||
pam? ( dev-python/pypam[${PYTHON_MULTI_USEDEP}] )
|
||||
')
|
||||
x86? ( sys-devel/dev86
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
sys-power/iasl )
|
||||
api? ( dev-libs/libxml2
|
||||
net-misc/curl )
|
||||
|
||||
ovmf? (
|
||||
!arm? ( !arm64? ( dev-lang/nasm ) )
|
||||
$(python_gen_impl_dep sqlite)
|
||||
)
|
||||
!amd64? ( >=sys-apps/dtc-1.4.0 )
|
||||
amd64? ( sys-power/iasl
|
||||
system-seabios? ( sys-firmware/seabios )
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
|
||||
dev-lang/perl
|
||||
app-misc/pax-utils
|
||||
doc? (
|
||||
app-text/ghostscript-gpl
|
||||
app-text/pandoc
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/markdown[${PYTHON_MULTI_USEDEP}]
|
||||
')
|
||||
dev-texlive/texlive-latexextra
|
||||
media-gfx/transfig
|
||||
)
|
||||
hvm? ( x11-base/xorg-proto )
|
||||
qemu? (
|
||||
app-arch/snappy:=
|
||||
x11-libs/pixman
|
||||
sdl? (
|
||||
media-libs/libsdl[X]
|
||||
media-libs/libsdl2[X]
|
||||
)
|
||||
)
|
||||
system-qemu? ( app-emulation/qemu[xen] )
|
||||
ocaml? ( dev-ml/findlib
|
||||
>=dev-lang/ocaml-4 )
|
||||
python? ( >=dev-lang/swig-4.0.0 )"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
sys-apps/iproute2[-minimal]
|
||||
net-misc/bridge-utils
|
||||
screen? (
|
||||
app-misc/screen
|
||||
app-admin/logrotate
|
||||
)"
|
||||
|
||||
# hvmloader is used to bootstrap a fully virtualized kernel
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="
|
||||
usr/libexec/xen/boot/hvmloader
|
||||
usr/share/qemu-xen/qemu/hppa-firmware.img
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/libexec/xen/bin/elf2dmp
|
||||
usr/libexec/xen/bin/ivshmem-client
|
||||
usr/libexec/xen/bin/ivshmem-server
|
||||
usr/libexec/xen/bin/qemu-edid
|
||||
usr/libexec/xen/bin/qemu-img
|
||||
usr/libexec/xen/bin/qemu-io
|
||||
usr/libexec/xen/bin/qemu-keymap
|
||||
usr/libexec/xen/bin/qemu-nbd
|
||||
usr/libexec/xen/bin/qemu-pr-helper
|
||||
usr/libexec/xen/bin/qemu-system-i386
|
||||
usr/libexec/xen/bin/virtfs-proxy-helper
|
||||
usr/libexec/xen/libexec/xen-bridge-helper
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/s390-netboot.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
python_setup
|
||||
export "CONFIG_LOMOUNT=y"
|
||||
|
||||
#bug 522642, disable compile tools/tests
|
||||
export "CONFIG_TESTS=n"
|
||||
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
|
||||
if use x86 && use amd64; then
|
||||
die "Confusion! Both x86 and amd64 are set in your use flags!"
|
||||
elif use x86; then
|
||||
export XEN_TARGET_ARCH="x86_32"
|
||||
elif use amd64 ; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local i
|
||||
|
||||
# Upstream's patchset
|
||||
if [[ -n ${UPSTREAM_VER} ]]; then
|
||||
einfo "Try to apply Xen Upstream patch set"
|
||||
eapply "${WORKDIR}"/patches-upstream
|
||||
fi
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
EPATCH_SUFFIX="patch"
|
||||
EPATCH_FORCE="yes"
|
||||
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf || die
|
||||
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
|
||||
# apply qemu-xen/upstream patches
|
||||
pushd "${S}"/tools/qemu-xen/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUU}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemuu/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
|
||||
# apply qemu-traditional patches
|
||||
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUT}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemut/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
|
||||
mv ../seabios-rel-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
|
||||
pushd tools/firmware/ > /dev/null
|
||||
ln -s seabios-dir-remote seabios-dir || die
|
||||
popd > /dev/null
|
||||
|
||||
# Gentoo's patchset
|
||||
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
|
||||
einfo "Try to apply Gentoo specific patch set"
|
||||
source "${FILESDIR}"/gentoo-patches.conf || die
|
||||
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
|
||||
for i in ${!_gpv}; do
|
||||
eapply "${WORKDIR}"/patches-gentoo/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Ovmf's patchset
|
||||
if use ovmf; then
|
||||
if [[ -n ${OVMF_VER} ]];then
|
||||
einfo "Try to apply Ovmf patch set"
|
||||
pushd "${WORKDIR}"/edk2-*/ > /dev/null
|
||||
eapply "${WORKDIR}"/patches-ovmf
|
||||
popd > /dev/null
|
||||
fi
|
||||
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
|
||||
fi
|
||||
|
||||
# ipxe
|
||||
if use ipxe; then
|
||||
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/_ipxe.tar.gz || die
|
||||
|
||||
# gcc 10
|
||||
cp "${WORKDIR}/patches-gentoo/xen-tools-4.13.0-ipxe-gcc10.patch" tools/firmware/etherboot/patches/ipxe-gcc10.patch || die
|
||||
echo ipxe-gcc10.patch >> tools/firmware/etherboot/patches/series || die
|
||||
fi
|
||||
|
||||
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
|
||||
|
||||
# Fix texi2html build error with new texi2html, qemu.doc.html
|
||||
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
|
||||
|
||||
use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
|
||||
sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
|
||||
-i tools/firmware/Makefile || die
|
||||
|
||||
# Drop .config, fixes to gcc-4.6
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
# drop flags
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
unset CPPFLAGS
|
||||
|
||||
if ! use pygrub; then
|
||||
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use python; then
|
||||
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use hvm; then
|
||||
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
|
||||
# Bug 351648
|
||||
elif ! use x86 && ! has x86 $(get_all_abis); then
|
||||
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
|
||||
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
|
||||
export CPATH="${WORKDIR}"/extra-headers
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
if use sdl; then
|
||||
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
|
||||
tools/Makefile || die
|
||||
else
|
||||
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
|
||||
tools/qemu-xen-traditional/xen-setup || die
|
||||
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
|
||||
tools/Makefile || die
|
||||
fi
|
||||
else
|
||||
# Don't bother with qemu, only needed for fully virtualised guests
|
||||
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
|
||||
fi
|
||||
|
||||
# Reset bash completion dir; Bug 472438
|
||||
sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
|
||||
-i Config.mk || die
|
||||
sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
|
||||
|
||||
# xencommons, Bug #492332, sed lighter weight than patching
|
||||
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
|
||||
-i tools/hotplug/Linux/init.d/xencommons.in || die
|
||||
|
||||
# fix bashishm
|
||||
sed -e '/Usage/s/\$//g' \
|
||||
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
|
||||
|
||||
# respect multilib, usr/lib/libcacard.so.0.0.0
|
||||
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
|
||||
-i tools/qemu-xen/configure || die
|
||||
|
||||
#bug 518136, don't build 32bit exactuable for nomultilib profile
|
||||
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
|
||||
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
|
||||
fi
|
||||
|
||||
# uncomment lines in xl.conf
|
||||
sed -e 's:^#autoballoon=:autoballoon=:' \
|
||||
-e 's:^#lockfile=:lockfile=:' \
|
||||
-e 's:^#vif.default.script=:vif.default.script=:' \
|
||||
-i tools/examples/xl.conf || die
|
||||
|
||||
# disable capstone (Bug #673474)
|
||||
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable glusterfs
|
||||
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf="--prefix=${PREFIX}/usr \
|
||||
--libdir=${PREFIX}/usr/$(get_libdir) \
|
||||
--libexecdir=${PREFIX}/usr/libexec \
|
||||
--localstatedir=${EPREFIX}/var \
|
||||
--disable-werror \
|
||||
--disable-xen \
|
||||
--enable-tools \
|
||||
--enable-docs \
|
||||
$(use_enable api xenapi) \
|
||||
$(use_enable ipxe) \
|
||||
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '') \
|
||||
$(use_enable ocaml ocamltools) \
|
||||
$(use_enable ovmf) \
|
||||
$(use_enable pam) \
|
||||
$(use_enable rombios) \
|
||||
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
|
||||
"
|
||||
|
||||
use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
|
||||
use system-qemu && myconf+=" --with-system-qemu=/usr/bin/qemu-system-x86_64"
|
||||
use amd64 && myconf+=" $(use_enable qemu-traditional)"
|
||||
tc-ld-disable-gold # Bug 669570
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
|
||||
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
|
||||
|
||||
if use doc; then
|
||||
emake -C docs build
|
||||
else
|
||||
emake -C docs man-pages
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Override auto-detection in the build system, bug #382573
|
||||
export INITD_DIR=/tmp/init.d
|
||||
export CONFIG_LEAF_DIR=../tmp/default
|
||||
|
||||
# Let the build system compile installed Python modules.
|
||||
local PYTHONDONTWRITEBYTECODE
|
||||
export PYTHONDONTWRITEBYTECODE
|
||||
|
||||
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
|
||||
XEN_PYTHON_NATIVE_INSTALL=y install-tools
|
||||
|
||||
# Created at runtime
|
||||
rm -rv "${ED}/var/run" || die
|
||||
|
||||
# Fix the remaining Python shebangs.
|
||||
python_fix_shebang "${D}"
|
||||
|
||||
# Remove RedHat-specific stuff
|
||||
rm -rf "${D}"/tmp || die
|
||||
|
||||
if use doc; then
|
||||
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
|
||||
dodoc -r docs/{pdf,txt}
|
||||
else
|
||||
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
|
||||
fi
|
||||
dodoc ${DOCS[@]}
|
||||
|
||||
newconfd "${FILESDIR}"/xendomains.confd xendomains
|
||||
newconfd "${FILESDIR}"/xenstored.confd xenstored
|
||||
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
|
||||
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
|
||||
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
|
||||
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
|
||||
newinitd "${FILESDIR}"/xencommons.initd xencommons
|
||||
newconfd "${FILESDIR}"/xencommons.confd xencommons
|
||||
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
|
||||
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
|
||||
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
|
||||
|
||||
if use screen; then
|
||||
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
|
||||
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
|
||||
keepdir /var/log/xen-consoles
|
||||
fi
|
||||
|
||||
# For -static-libs wrt Bug 384355
|
||||
if ! use static-libs; then
|
||||
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
|
||||
fi
|
||||
|
||||
# for xendomains
|
||||
keepdir /etc/xen/auto
|
||||
|
||||
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
|
||||
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
|
||||
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
|
||||
|
||||
keepdir /var/lib/xen/dump
|
||||
keepdir /var/lib/xen/xenpaging
|
||||
keepdir /var/lib/xenstored
|
||||
keepdir /var/log/xen
|
||||
|
||||
if use python; then
|
||||
python_domodule "${S}/tools/xenstat/libxenstat/bindings/swig/python/xenstat.py"
|
||||
python_domodule "${S}/tools/xenstat/libxenstat/bindings/swig/python/_xenstat.so"
|
||||
fi
|
||||
|
||||
python_optimize
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide and the offical wiki page:"
|
||||
elog "https://wiki.gentoo.org/wiki/Xen"
|
||||
elog "https://wiki.xen.org/wiki/Main_Page"
|
||||
elog ""
|
||||
elog "Recommended to utilise the xencommons script to config system at boot"
|
||||
elog "Add by use of rc-update on completion of the install"
|
||||
|
||||
if ! use hvm; then
|
||||
echo
|
||||
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
|
||||
elog "support enable the hvm use flag."
|
||||
elog "An x86 or amd64 system is required to build HVM support."
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
|
||||
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
|
||||
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
|
||||
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
|
||||
fi
|
||||
}
|
@ -1,512 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
PYTHON_REQ_USE='ncurses,xml,threads(+)'
|
||||
|
||||
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
REPO="xen.git"
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
|
||||
S="${WORKDIR}/${REPO}"
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
UPSTREAM_VER=6
|
||||
SECURITY_VER=29
|
||||
# xen-tools's gentoo patches tarball
|
||||
GENTOO_VER=21
|
||||
# xen-tools's gentoo patches version which apply to this specific ebuild
|
||||
GENTOO_GPV=1
|
||||
# xen-tools ovmf's patches
|
||||
OVMF_VER=
|
||||
|
||||
SEABIOS_VER="1.12.1"
|
||||
EDK2_COMMIT="06dc822d045c2bb42e497487935485302486e151"
|
||||
EDK2_OPENSSL_VERSION="1_1_1g"
|
||||
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
|
||||
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
|
||||
IPXE_COMMIT="1dd56dbd11082fb622c2ed21cfaced4f47d798a6"
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
[[ -n ${OVMF_VER} ]] && \
|
||||
OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
|
||||
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
|
||||
https://github.com/qemu/seabios/archive/rel-${SEABIOS_VER}.tar.gz -> seabios-${SEABIOS_VER}.tar.gz
|
||||
ipxe? ( http://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
|
||||
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
|
||||
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
|
||||
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
|
||||
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
|
||||
${OVMF_PATCHSET_URI} )
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
|
||||
S="${WORKDIR}/xen-${MY_PV}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Xen tools including QEMU and xl"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
DOCS=( README )
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
|
||||
# >=dev-lang/ocaml-4 stable
|
||||
# Masked in profiles/eapi-5-files instead
|
||||
IUSE="api debug doc flask +hvm +ipxe ocaml ovmf +pam pygrub python +qemu +qemu-traditional +rombios screen sdl static-libs system-ipxe system-qemu system-seabios"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
ipxe? ( rombios )
|
||||
ovmf? ( hvm )
|
||||
pygrub? ( python )
|
||||
rombios? ( hvm )
|
||||
system-ipxe? ( rombios )
|
||||
?? ( ipxe system-ipxe )
|
||||
?? ( qemu system-qemu )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
sys-apps/pciutils
|
||||
dev-libs/lzo:2
|
||||
dev-libs/glib:2
|
||||
dev-libs/yajl
|
||||
dev-libs/libaio
|
||||
dev-libs/libgcrypt:0
|
||||
sys-libs/zlib
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=sys-kernel/linux-headers-4.11
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/lxml[${PYTHON_MULTI_USEDEP}]
|
||||
pam? ( dev-python/pypam[${PYTHON_MULTI_USEDEP}] )
|
||||
')
|
||||
x86? ( sys-devel/dev86
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
sys-power/iasl )
|
||||
api? ( dev-libs/libxml2
|
||||
net-misc/curl )
|
||||
|
||||
ovmf? (
|
||||
!arm? ( !arm64? ( dev-lang/nasm ) )
|
||||
$(python_gen_impl_dep sqlite)
|
||||
)
|
||||
!amd64? ( >=sys-apps/dtc-1.4.0 )
|
||||
amd64? ( sys-power/iasl
|
||||
system-seabios? ( sys-firmware/seabios )
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
|
||||
dev-lang/perl
|
||||
app-misc/pax-utils
|
||||
doc? (
|
||||
app-text/ghostscript-gpl
|
||||
app-text/pandoc
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/markdown[${PYTHON_MULTI_USEDEP}]
|
||||
')
|
||||
dev-texlive/texlive-latexextra
|
||||
media-gfx/transfig
|
||||
)
|
||||
hvm? ( x11-base/xorg-proto )
|
||||
qemu? (
|
||||
app-arch/snappy:=
|
||||
x11-libs/pixman
|
||||
sdl? (
|
||||
media-libs/libsdl[X]
|
||||
media-libs/libsdl2[X]
|
||||
)
|
||||
)
|
||||
system-qemu? ( app-emulation/qemu[xen] )
|
||||
ocaml? ( dev-ml/findlib
|
||||
>=dev-lang/ocaml-4 )
|
||||
python? ( >=dev-lang/swig-4.0.0 )"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
sys-apps/iproute2[-minimal]
|
||||
net-misc/bridge-utils
|
||||
screen? (
|
||||
app-misc/screen
|
||||
app-admin/logrotate
|
||||
)"
|
||||
|
||||
# hvmloader is used to bootstrap a fully virtualized kernel
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="
|
||||
usr/libexec/xen/boot/hvmloader
|
||||
usr/share/qemu-xen/qemu/hppa-firmware.img
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/libexec/xen/bin/elf2dmp
|
||||
usr/libexec/xen/bin/ivshmem-client
|
||||
usr/libexec/xen/bin/ivshmem-server
|
||||
usr/libexec/xen/bin/qemu-edid
|
||||
usr/libexec/xen/bin/qemu-img
|
||||
usr/libexec/xen/bin/qemu-io
|
||||
usr/libexec/xen/bin/qemu-keymap
|
||||
usr/libexec/xen/bin/qemu-nbd
|
||||
usr/libexec/xen/bin/qemu-pr-helper
|
||||
usr/libexec/xen/bin/qemu-system-i386
|
||||
usr/libexec/xen/bin/virtfs-proxy-helper
|
||||
usr/libexec/xen/libexec/xen-bridge-helper
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/s390-netboot.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
python_setup
|
||||
export "CONFIG_LOMOUNT=y"
|
||||
|
||||
#bug 522642, disable compile tools/tests
|
||||
export "CONFIG_TESTS=n"
|
||||
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
|
||||
if use x86 && use amd64; then
|
||||
die "Confusion! Both x86 and amd64 are set in your use flags!"
|
||||
elif use x86; then
|
||||
export XEN_TARGET_ARCH="x86_32"
|
||||
elif use amd64 ; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local i
|
||||
|
||||
# Upstream's patchset
|
||||
if [[ -n ${UPSTREAM_VER} ]]; then
|
||||
einfo "Try to apply Xen Upstream patch set"
|
||||
eapply "${WORKDIR}"/patches-upstream
|
||||
fi
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
EPATCH_SUFFIX="patch"
|
||||
EPATCH_FORCE="yes"
|
||||
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf || die
|
||||
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
|
||||
# apply qemu-xen/upstream patches
|
||||
pushd "${S}"/tools/qemu-xen/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUU}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemuu/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
|
||||
# apply qemu-traditional patches
|
||||
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUT}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemut/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
|
||||
mv ../seabios-rel-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
|
||||
pushd tools/firmware/ > /dev/null
|
||||
ln -s seabios-dir-remote seabios-dir || die
|
||||
popd > /dev/null
|
||||
|
||||
# Gentoo's patchset
|
||||
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
|
||||
einfo "Try to apply Gentoo specific patch set"
|
||||
source "${FILESDIR}"/gentoo-patches.conf || die
|
||||
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
|
||||
for i in ${!_gpv}; do
|
||||
eapply "${WORKDIR}"/patches-gentoo/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Ovmf's patchset
|
||||
if use ovmf; then
|
||||
if [[ -n ${OVMF_VER} ]];then
|
||||
einfo "Try to apply Ovmf patch set"
|
||||
pushd "${WORKDIR}"/edk2-*/ > /dev/null
|
||||
eapply "${WORKDIR}"/patches-ovmf
|
||||
popd > /dev/null
|
||||
fi
|
||||
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
|
||||
fi
|
||||
|
||||
# ipxe
|
||||
if use ipxe; then
|
||||
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/_ipxe.tar.gz || die
|
||||
|
||||
# gcc 10
|
||||
cp "${WORKDIR}/patches-gentoo/xen-tools-4.13.0-ipxe-gcc10.patch" tools/firmware/etherboot/patches/ipxe-gcc10.patch || die
|
||||
echo ipxe-gcc10.patch >> tools/firmware/etherboot/patches/series || die
|
||||
fi
|
||||
|
||||
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
|
||||
|
||||
# Fix texi2html build error with new texi2html, qemu.doc.html
|
||||
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
|
||||
|
||||
use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
|
||||
sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
|
||||
-i tools/firmware/Makefile || die
|
||||
|
||||
# Drop .config, fixes to gcc-4.6
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
# drop flags
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
unset CPPFLAGS
|
||||
|
||||
if ! use pygrub; then
|
||||
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use python; then
|
||||
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use hvm; then
|
||||
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
|
||||
# Bug 351648
|
||||
elif ! use x86 && ! has x86 $(get_all_abis); then
|
||||
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
|
||||
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
|
||||
export CPATH="${WORKDIR}"/extra-headers
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
if use sdl; then
|
||||
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
|
||||
tools/Makefile || die
|
||||
else
|
||||
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
|
||||
tools/qemu-xen-traditional/xen-setup || die
|
||||
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
|
||||
tools/Makefile || die
|
||||
fi
|
||||
else
|
||||
# Don't bother with qemu, only needed for fully virtualised guests
|
||||
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
|
||||
fi
|
||||
|
||||
# Reset bash completion dir; Bug 472438
|
||||
sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
|
||||
-i Config.mk || die
|
||||
sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
|
||||
|
||||
# xencommons, Bug #492332, sed lighter weight than patching
|
||||
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
|
||||
-i tools/hotplug/Linux/init.d/xencommons.in || die
|
||||
|
||||
# fix bashishm
|
||||
sed -e '/Usage/s/\$//g' \
|
||||
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
|
||||
|
||||
# respect multilib, usr/lib/libcacard.so.0.0.0
|
||||
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
|
||||
-i tools/qemu-xen/configure || die
|
||||
|
||||
#bug 518136, don't build 32bit exactuable for nomultilib profile
|
||||
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
|
||||
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
|
||||
fi
|
||||
|
||||
# uncomment lines in xl.conf
|
||||
sed -e 's:^#autoballoon=:autoballoon=:' \
|
||||
-e 's:^#lockfile=:lockfile=:' \
|
||||
-e 's:^#vif.default.script=:vif.default.script=:' \
|
||||
-i tools/examples/xl.conf || die
|
||||
|
||||
# disable capstone (Bug #673474)
|
||||
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable glusterfs
|
||||
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf="--prefix=${PREFIX}/usr \
|
||||
--libdir=${PREFIX}/usr/$(get_libdir) \
|
||||
--libexecdir=${PREFIX}/usr/libexec \
|
||||
--localstatedir=${EPREFIX}/var \
|
||||
--disable-werror \
|
||||
--disable-xen \
|
||||
--enable-tools \
|
||||
--enable-docs \
|
||||
$(use_enable api xenapi) \
|
||||
$(use_enable ipxe) \
|
||||
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '') \
|
||||
$(use_enable ocaml ocamltools) \
|
||||
$(use_enable ovmf) \
|
||||
$(use_enable pam) \
|
||||
$(use_enable rombios) \
|
||||
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
|
||||
"
|
||||
|
||||
use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
|
||||
use system-qemu && myconf+=" --with-system-qemu=/usr/bin/qemu-system-x86_64"
|
||||
use amd64 && myconf+=" $(use_enable qemu-traditional)"
|
||||
tc-ld-disable-gold # Bug 669570
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
|
||||
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
|
||||
|
||||
if use doc; then
|
||||
emake -C docs build
|
||||
else
|
||||
emake -C docs man-pages
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Override auto-detection in the build system, bug #382573
|
||||
export INITD_DIR=/tmp/init.d
|
||||
export CONFIG_LEAF_DIR=../tmp/default
|
||||
|
||||
# Let the build system compile installed Python modules.
|
||||
local PYTHONDONTWRITEBYTECODE
|
||||
export PYTHONDONTWRITEBYTECODE
|
||||
|
||||
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
|
||||
XEN_PYTHON_NATIVE_INSTALL=y install-tools
|
||||
|
||||
# Created at runtime
|
||||
rm -rv "${ED}/var/run" || die
|
||||
|
||||
# Fix the remaining Python shebangs.
|
||||
python_fix_shebang "${D}"
|
||||
|
||||
# Remove RedHat-specific stuff
|
||||
rm -rf "${D}"/tmp || die
|
||||
|
||||
if use doc; then
|
||||
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
|
||||
dodoc -r docs/{pdf,txt}
|
||||
else
|
||||
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
|
||||
fi
|
||||
dodoc ${DOCS[@]}
|
||||
|
||||
newconfd "${FILESDIR}"/xendomains.confd xendomains
|
||||
newconfd "${FILESDIR}"/xenstored.confd xenstored
|
||||
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
|
||||
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
|
||||
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
|
||||
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
|
||||
newinitd "${FILESDIR}"/xencommons.initd xencommons
|
||||
newconfd "${FILESDIR}"/xencommons.confd xencommons
|
||||
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
|
||||
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
|
||||
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
|
||||
|
||||
if use screen; then
|
||||
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
|
||||
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
|
||||
keepdir /var/log/xen-consoles
|
||||
fi
|
||||
|
||||
# For -static-libs wrt Bug 384355
|
||||
if ! use static-libs; then
|
||||
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
|
||||
fi
|
||||
|
||||
# for xendomains
|
||||
keepdir /etc/xen/auto
|
||||
|
||||
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
|
||||
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
|
||||
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
|
||||
|
||||
keepdir /var/lib/xen/dump
|
||||
keepdir /var/lib/xen/xenpaging
|
||||
keepdir /var/lib/xenstored
|
||||
keepdir /var/log/xen
|
||||
|
||||
if use python; then
|
||||
python_domodule "${S}/tools/xenstat/libxenstat/bindings/swig/python/xenstat.py"
|
||||
python_domodule "${S}/tools/xenstat/libxenstat/bindings/swig/python/_xenstat.so"
|
||||
fi
|
||||
|
||||
python_optimize
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide and the offical wiki page:"
|
||||
elog "https://wiki.gentoo.org/wiki/Xen"
|
||||
elog "https://wiki.xen.org/wiki/Main_Page"
|
||||
elog ""
|
||||
elog "Recommended to utilise the xencommons script to config system at boot"
|
||||
elog "Add by use of rc-update on completion of the install"
|
||||
|
||||
if ! use hvm; then
|
||||
echo
|
||||
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
|
||||
elog "support enable the hvm use flag."
|
||||
elog "An x86 or amd64 system is required to build HVM support."
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
|
||||
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
|
||||
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
|
||||
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
|
||||
fi
|
||||
}
|
@ -1,512 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6..9} )
|
||||
PYTHON_REQ_USE='ncurses,xml,threads(+)'
|
||||
|
||||
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
REPO="xen.git"
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
|
||||
S="${WORKDIR}/${REPO}"
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
UPSTREAM_VER=3
|
||||
SECURITY_VER=
|
||||
# xen-tools's gentoo patches tarball
|
||||
GENTOO_VER=22
|
||||
# xen-tools's gentoo patches version which apply to this specific ebuild
|
||||
GENTOO_GPV=0
|
||||
# xen-tools ovmf's patches
|
||||
OVMF_VER=
|
||||
|
||||
SEABIOS_VER="1.13.0"
|
||||
EDK2_COMMIT="06dc822d045c2bb42e497487935485302486e151"
|
||||
EDK2_OPENSSL_VERSION="1_1_1g"
|
||||
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
|
||||
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
|
||||
IPXE_COMMIT="1dd56dbd11082fb622c2ed21cfaced4f47d798a6"
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
[[ -n ${OVMF_VER} ]] && \
|
||||
OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
|
||||
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
|
||||
https://github.com/qemu/seabios/archive/rel-${SEABIOS_VER}.tar.gz -> seabios-${SEABIOS_VER}.tar.gz
|
||||
ipxe? ( http://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
|
||||
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
|
||||
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
|
||||
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
|
||||
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
|
||||
${OVMF_PATCHSET_URI} )
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
|
||||
S="${WORKDIR}/xen-${MY_PV}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Xen tools including QEMU and xl"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
DOCS=( README )
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
|
||||
# >=dev-lang/ocaml-4 stable
|
||||
# Masked in profiles/eapi-5-files instead
|
||||
IUSE="api debug doc flask +hvm +ipxe ocaml ovmf +pam pygrub python +qemu +qemu-traditional +rombios screen sdl static-libs system-ipxe system-qemu system-seabios"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
ipxe? ( rombios )
|
||||
ovmf? ( hvm )
|
||||
pygrub? ( python )
|
||||
rombios? ( hvm )
|
||||
system-ipxe? ( rombios )
|
||||
?? ( ipxe system-ipxe )
|
||||
?? ( qemu system-qemu )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
sys-apps/pciutils
|
||||
dev-libs/lzo:2
|
||||
dev-libs/glib:2
|
||||
dev-libs/yajl
|
||||
dev-libs/libaio
|
||||
dev-libs/libgcrypt:0
|
||||
sys-libs/zlib
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
app-misc/pax-utils
|
||||
dev-lang/perl
|
||||
>=sys-kernel/linux-headers-4.11
|
||||
x11-libs/pixman
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/lxml[${PYTHON_MULTI_USEDEP}]
|
||||
pam? ( dev-python/pypam[${PYTHON_MULTI_USEDEP}] )
|
||||
')
|
||||
x86? ( sys-devel/dev86
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
sys-power/iasl )
|
||||
api? ( dev-libs/libxml2
|
||||
net-misc/curl )
|
||||
|
||||
ovmf? (
|
||||
!arm? ( !arm64? ( dev-lang/nasm ) )
|
||||
$(python_gen_impl_dep sqlite)
|
||||
)
|
||||
!amd64? ( >=sys-apps/dtc-1.4.0 )
|
||||
amd64? ( sys-power/iasl
|
||||
system-seabios? ( sys-firmware/seabios )
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
|
||||
doc? (
|
||||
app-text/ghostscript-gpl
|
||||
app-text/pandoc
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/markdown[${PYTHON_MULTI_USEDEP}]
|
||||
')
|
||||
dev-texlive/texlive-latexextra
|
||||
media-gfx/transfig
|
||||
)
|
||||
hvm? ( x11-base/xorg-proto )
|
||||
qemu? (
|
||||
app-arch/snappy:=
|
||||
sdl? (
|
||||
media-libs/libsdl[X]
|
||||
media-libs/libsdl2[X]
|
||||
)
|
||||
)
|
||||
system-qemu? ( app-emulation/qemu[xen] )
|
||||
ocaml? ( dev-ml/findlib
|
||||
>=dev-lang/ocaml-4 )
|
||||
python? ( >=dev-lang/swig-4.0.0 )"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
sys-apps/iproute2[-minimal]
|
||||
net-misc/bridge-utils
|
||||
screen? (
|
||||
app-misc/screen
|
||||
app-admin/logrotate
|
||||
)"
|
||||
|
||||
# hvmloader is used to bootstrap a fully virtualized kernel
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="
|
||||
usr/libexec/xen/boot/hvmloader
|
||||
usr/share/qemu-xen/qemu/hppa-firmware.img
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/libexec/xen/bin/elf2dmp
|
||||
usr/libexec/xen/bin/ivshmem-client
|
||||
usr/libexec/xen/bin/ivshmem-server
|
||||
usr/libexec/xen/bin/qemu-edid
|
||||
usr/libexec/xen/bin/qemu-img
|
||||
usr/libexec/xen/bin/qemu-io
|
||||
usr/libexec/xen/bin/qemu-keymap
|
||||
usr/libexec/xen/bin/qemu-nbd
|
||||
usr/libexec/xen/bin/qemu-pr-helper
|
||||
usr/libexec/xen/bin/qemu-system-i386
|
||||
usr/libexec/xen/bin/virtfs-proxy-helper
|
||||
usr/libexec/xen/libexec/xen-bridge-helper
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/s390-netboot.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
python_setup
|
||||
export "CONFIG_LOMOUNT=y"
|
||||
|
||||
#bug 522642, disable compile tools/tests
|
||||
export "CONFIG_TESTS=n"
|
||||
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
|
||||
if use x86 && use amd64; then
|
||||
die "Confusion! Both x86 and amd64 are set in your use flags!"
|
||||
elif use x86; then
|
||||
export XEN_TARGET_ARCH="x86_32"
|
||||
elif use amd64 ; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local i
|
||||
|
||||
# Upstream's patchset
|
||||
if [[ -n ${UPSTREAM_VER} ]]; then
|
||||
einfo "Try to apply Xen Upstream patch set"
|
||||
eapply "${WORKDIR}"/patches-upstream
|
||||
fi
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
EPATCH_SUFFIX="patch"
|
||||
EPATCH_FORCE="yes"
|
||||
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf || die
|
||||
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
|
||||
# apply qemu-xen/upstream patches
|
||||
pushd "${S}"/tools/qemu-xen/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUU}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemuu/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
|
||||
# apply qemu-traditional patches
|
||||
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUT}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemut/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
|
||||
mv ../seabios-rel-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
|
||||
pushd tools/firmware/ > /dev/null
|
||||
ln -s seabios-dir-remote seabios-dir || die
|
||||
popd > /dev/null
|
||||
|
||||
# Gentoo's patchset
|
||||
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
|
||||
einfo "Try to apply Gentoo specific patch set"
|
||||
source "${FILESDIR}"/gentoo-patches.conf || die
|
||||
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
|
||||
for i in ${!_gpv}; do
|
||||
eapply "${WORKDIR}"/patches-gentoo/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Ovmf's patchset
|
||||
if use ovmf; then
|
||||
if [[ -n ${OVMF_VER} ]];then
|
||||
einfo "Try to apply Ovmf patch set"
|
||||
pushd "${WORKDIR}"/edk2-*/ > /dev/null
|
||||
eapply "${WORKDIR}"/patches-ovmf
|
||||
popd > /dev/null
|
||||
fi
|
||||
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
|
||||
fi
|
||||
|
||||
# ipxe
|
||||
if use ipxe; then
|
||||
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/_ipxe.tar.gz || die
|
||||
|
||||
# gcc 10
|
||||
cp "${WORKDIR}/patches-gentoo/xen-tools-4.13.0-ipxe-gcc10.patch" tools/firmware/etherboot/patches/ipxe-gcc10.patch || die
|
||||
echo ipxe-gcc10.patch >> tools/firmware/etherboot/patches/series || die
|
||||
fi
|
||||
|
||||
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
|
||||
|
||||
# Fix texi2html build error with new texi2html, qemu.doc.html
|
||||
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
|
||||
|
||||
use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
|
||||
sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
|
||||
-i tools/firmware/Makefile || die
|
||||
|
||||
# Drop .config, fixes to gcc-4.6
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
# drop flags
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
unset CPPFLAGS
|
||||
|
||||
if ! use pygrub; then
|
||||
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use python; then
|
||||
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use hvm; then
|
||||
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
|
||||
# Bug 351648
|
||||
elif ! use x86 && ! has x86 $(get_all_abis); then
|
||||
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
|
||||
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
|
||||
export CPATH="${WORKDIR}"/extra-headers
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
if use sdl; then
|
||||
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
|
||||
tools/Makefile || die
|
||||
else
|
||||
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
|
||||
tools/qemu-xen-traditional/xen-setup || die
|
||||
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
|
||||
tools/Makefile || die
|
||||
fi
|
||||
else
|
||||
# Don't bother with qemu, only needed for fully virtualised guests
|
||||
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
|
||||
fi
|
||||
|
||||
# Reset bash completion dir; Bug 472438
|
||||
sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
|
||||
-i Config.mk || die
|
||||
sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
|
||||
|
||||
# xencommons, Bug #492332, sed lighter weight than patching
|
||||
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
|
||||
-i tools/hotplug/Linux/init.d/xencommons.in || die
|
||||
|
||||
# fix bashishm
|
||||
sed -e '/Usage/s/\$//g' \
|
||||
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
|
||||
|
||||
# respect multilib, usr/lib/libcacard.so.0.0.0
|
||||
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
|
||||
-i tools/qemu-xen/configure || die
|
||||
|
||||
#bug 518136, don't build 32bit exactuable for nomultilib profile
|
||||
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
|
||||
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
|
||||
fi
|
||||
|
||||
# uncomment lines in xl.conf
|
||||
sed -e 's:^#autoballoon=:autoballoon=:' \
|
||||
-e 's:^#lockfile=:lockfile=:' \
|
||||
-e 's:^#vif.default.script=:vif.default.script=:' \
|
||||
-i tools/examples/xl.conf || die
|
||||
|
||||
# disable capstone (Bug #673474)
|
||||
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable glusterfs
|
||||
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf="--prefix=${PREFIX}/usr \
|
||||
--libdir=${PREFIX}/usr/$(get_libdir) \
|
||||
--libexecdir=${PREFIX}/usr/libexec \
|
||||
--localstatedir=${EPREFIX}/var \
|
||||
--disable-werror \
|
||||
--disable-xen \
|
||||
--enable-tools \
|
||||
--enable-docs \
|
||||
$(use_enable api xenapi) \
|
||||
$(use_enable ipxe) \
|
||||
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '') \
|
||||
$(use_enable ocaml ocamltools) \
|
||||
$(use_enable ovmf) \
|
||||
$(use_enable pam) \
|
||||
$(use_enable rombios) \
|
||||
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
|
||||
"
|
||||
|
||||
use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
|
||||
use system-qemu && myconf+=" --with-system-qemu=/usr/bin/qemu-system-x86_64"
|
||||
use amd64 && myconf+=" $(use_enable qemu-traditional)"
|
||||
tc-ld-disable-gold # Bug 669570
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
|
||||
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
|
||||
|
||||
if use doc; then
|
||||
emake -C docs build
|
||||
else
|
||||
emake -C docs man-pages
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Override auto-detection in the build system, bug #382573
|
||||
export INITD_DIR=/tmp/init.d
|
||||
export CONFIG_LEAF_DIR=../tmp/default
|
||||
|
||||
# Let the build system compile installed Python modules.
|
||||
local PYTHONDONTWRITEBYTECODE
|
||||
export PYTHONDONTWRITEBYTECODE
|
||||
|
||||
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
|
||||
XEN_PYTHON_NATIVE_INSTALL=y install-tools
|
||||
|
||||
# Created at runtime
|
||||
rm -rv "${ED}/var/run" || die
|
||||
|
||||
# Fix the remaining Python shebangs.
|
||||
python_fix_shebang "${D}"
|
||||
|
||||
# Remove RedHat-specific stuff
|
||||
rm -rf "${D}"/tmp || die
|
||||
|
||||
if use doc; then
|
||||
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
|
||||
dodoc -r docs/{pdf,txt}
|
||||
else
|
||||
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
|
||||
fi
|
||||
dodoc ${DOCS[@]}
|
||||
|
||||
newconfd "${FILESDIR}"/xendomains.confd xendomains
|
||||
newconfd "${FILESDIR}"/xenstored.confd xenstored
|
||||
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
|
||||
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
|
||||
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
|
||||
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
|
||||
newinitd "${FILESDIR}"/xencommons.initd xencommons
|
||||
newconfd "${FILESDIR}"/xencommons.confd xencommons
|
||||
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
|
||||
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
|
||||
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
|
||||
|
||||
if use screen; then
|
||||
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
|
||||
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
|
||||
keepdir /var/log/xen-consoles
|
||||
fi
|
||||
|
||||
# For -static-libs wrt Bug 384355
|
||||
if ! use static-libs; then
|
||||
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
|
||||
fi
|
||||
|
||||
# for xendomains
|
||||
keepdir /etc/xen/auto
|
||||
|
||||
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
|
||||
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
|
||||
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
|
||||
|
||||
keepdir /var/lib/xen/dump
|
||||
keepdir /var/lib/xen/xenpaging
|
||||
keepdir /var/lib/xenstored
|
||||
keepdir /var/log/xen
|
||||
|
||||
if use python; then
|
||||
python_domodule "${S}/tools/xenstat/libxenstat/bindings/swig/python/xenstat.py"
|
||||
python_domodule "${S}/tools/xenstat/libxenstat/bindings/swig/python/_xenstat.so"
|
||||
fi
|
||||
|
||||
python_optimize
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide and the offical wiki page:"
|
||||
elog "https://wiki.gentoo.org/wiki/Xen"
|
||||
elog "https://wiki.xen.org/wiki/Main_Page"
|
||||
elog ""
|
||||
elog "Recommended to utilise the xencommons script to config system at boot"
|
||||
elog "Add by use of rc-update on completion of the install"
|
||||
|
||||
if ! use hvm; then
|
||||
echo
|
||||
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
|
||||
elog "support enable the hvm use flag."
|
||||
elog "An x86 or amd64 system is required to build HVM support."
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
|
||||
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
|
||||
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
|
||||
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
|
||||
fi
|
||||
}
|
@ -1,512 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6..9} )
|
||||
PYTHON_REQ_USE='ncurses,xml,threads(+)'
|
||||
|
||||
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
REPO="xen.git"
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
|
||||
S="${WORKDIR}/${REPO}"
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
|
||||
UPSTREAM_VER=
|
||||
SECURITY_VER=
|
||||
# xen-tools's gentoo patches tarball
|
||||
GENTOO_VER=22
|
||||
# xen-tools's gentoo patches version which apply to this specific ebuild
|
||||
GENTOO_GPV=0
|
||||
# xen-tools ovmf's patches
|
||||
OVMF_VER=
|
||||
|
||||
SEABIOS_VER="1.13.0"
|
||||
EDK2_COMMIT="06dc822d045c2bb42e497487935485302486e151"
|
||||
EDK2_OPENSSL_VERSION="1_1_1g"
|
||||
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
|
||||
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
|
||||
IPXE_COMMIT="1dd56dbd11082fb622c2ed21cfaced4f47d798a6"
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
[[ -n ${OVMF_VER} ]] && \
|
||||
OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
|
||||
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
|
||||
https://github.com/qemu/seabios/archive/rel-${SEABIOS_VER}.tar.gz -> seabios-${SEABIOS_VER}.tar.gz
|
||||
ipxe? ( http://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
|
||||
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
|
||||
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
|
||||
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
|
||||
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
|
||||
${OVMF_PATCHSET_URI} )
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
|
||||
S="${WORKDIR}/xen-${MY_PV}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Xen tools including QEMU and xl"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
DOCS=( README )
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
|
||||
# >=dev-lang/ocaml-4 stable
|
||||
# Masked in profiles/eapi-5-files instead
|
||||
IUSE="api debug doc flask +hvm +ipxe ocaml ovmf +pam pygrub python +qemu +qemu-traditional +rombios screen sdl static-libs system-ipxe system-qemu system-seabios"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
ipxe? ( rombios )
|
||||
ovmf? ( hvm )
|
||||
pygrub? ( python )
|
||||
rombios? ( hvm )
|
||||
system-ipxe? ( rombios )
|
||||
?? ( ipxe system-ipxe )
|
||||
?? ( qemu system-qemu )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
sys-apps/pciutils
|
||||
dev-libs/lzo:2
|
||||
dev-libs/glib:2
|
||||
dev-libs/yajl
|
||||
dev-libs/libaio
|
||||
dev-libs/libgcrypt:0
|
||||
sys-libs/zlib
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
app-misc/pax-utils
|
||||
dev-lang/perl
|
||||
>=sys-kernel/linux-headers-4.11
|
||||
x11-libs/pixman
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/lxml[${PYTHON_MULTI_USEDEP}]
|
||||
pam? ( dev-python/pypam[${PYTHON_MULTI_USEDEP}] )
|
||||
')
|
||||
x86? ( sys-devel/dev86
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
sys-power/iasl )
|
||||
api? ( dev-libs/libxml2
|
||||
net-misc/curl )
|
||||
|
||||
ovmf? (
|
||||
!arm? ( !arm64? ( dev-lang/nasm ) )
|
||||
$(python_gen_impl_dep sqlite)
|
||||
)
|
||||
!amd64? ( >=sys-apps/dtc-1.4.0 )
|
||||
amd64? ( sys-power/iasl
|
||||
system-seabios? ( sys-firmware/seabios )
|
||||
system-ipxe? ( sys-firmware/ipxe[qemu] )
|
||||
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
|
||||
doc? (
|
||||
app-text/ghostscript-gpl
|
||||
app-text/pandoc
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/markdown[${PYTHON_MULTI_USEDEP}]
|
||||
')
|
||||
dev-texlive/texlive-latexextra
|
||||
media-gfx/transfig
|
||||
)
|
||||
hvm? ( x11-base/xorg-proto )
|
||||
qemu? (
|
||||
app-arch/snappy:=
|
||||
sdl? (
|
||||
media-libs/libsdl[X]
|
||||
media-libs/libsdl2[X]
|
||||
)
|
||||
)
|
||||
system-qemu? ( app-emulation/qemu[xen] )
|
||||
ocaml? ( dev-ml/findlib
|
||||
>=dev-lang/ocaml-4 )
|
||||
python? ( >=dev-lang/swig-4.0.0 )"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
sys-apps/iproute2[-minimal]
|
||||
net-misc/bridge-utils
|
||||
screen? (
|
||||
app-misc/screen
|
||||
app-admin/logrotate
|
||||
)"
|
||||
|
||||
# hvmloader is used to bootstrap a fully virtualized kernel
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="
|
||||
usr/libexec/xen/boot/hvmloader
|
||||
usr/share/qemu-xen/qemu/hppa-firmware.img
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/libexec/xen/bin/elf2dmp
|
||||
usr/libexec/xen/bin/ivshmem-client
|
||||
usr/libexec/xen/bin/ivshmem-server
|
||||
usr/libexec/xen/bin/qemu-edid
|
||||
usr/libexec/xen/bin/qemu-img
|
||||
usr/libexec/xen/bin/qemu-io
|
||||
usr/libexec/xen/bin/qemu-keymap
|
||||
usr/libexec/xen/bin/qemu-nbd
|
||||
usr/libexec/xen/bin/qemu-pr-helper
|
||||
usr/libexec/xen/bin/qemu-system-i386
|
||||
usr/libexec/xen/bin/virtfs-proxy-helper
|
||||
usr/libexec/xen/libexec/xen-bridge-helper
|
||||
usr/share/qemu-xen/qemu/s390-ccw.img
|
||||
usr/share/qemu-xen/qemu/s390-netboot.img
|
||||
usr/share/qemu-xen/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
python_setup
|
||||
export "CONFIG_LOMOUNT=y"
|
||||
|
||||
#bug 522642, disable compile tools/tests
|
||||
export "CONFIG_TESTS=n"
|
||||
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
|
||||
if use x86 && use amd64; then
|
||||
die "Confusion! Both x86 and amd64 are set in your use flags!"
|
||||
elif use x86; then
|
||||
export XEN_TARGET_ARCH="x86_32"
|
||||
elif use amd64 ; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
local i
|
||||
|
||||
# Upstream's patchset
|
||||
if [[ -n ${UPSTREAM_VER} ]]; then
|
||||
einfo "Try to apply Xen Upstream patch set"
|
||||
eapply "${WORKDIR}"/patches-upstream
|
||||
fi
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
EPATCH_SUFFIX="patch"
|
||||
EPATCH_FORCE="yes"
|
||||
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf || die
|
||||
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
|
||||
# apply qemu-xen/upstream patches
|
||||
pushd "${S}"/tools/qemu-xen/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUU}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemuu/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
|
||||
# apply qemu-traditional patches
|
||||
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
|
||||
for i in ${XEN_SECURITY_QEMUT}; do
|
||||
eapply "${WORKDIR}"/patches-security/qemut/$i
|
||||
done
|
||||
popd > /dev/null
|
||||
fi
|
||||
|
||||
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
|
||||
mv ../seabios-rel-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
|
||||
pushd tools/firmware/ > /dev/null
|
||||
ln -s seabios-dir-remote seabios-dir || die
|
||||
popd > /dev/null
|
||||
|
||||
# Gentoo's patchset
|
||||
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
|
||||
einfo "Try to apply Gentoo specific patch set"
|
||||
source "${FILESDIR}"/gentoo-patches.conf || die
|
||||
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
|
||||
for i in ${!_gpv}; do
|
||||
eapply "${WORKDIR}"/patches-gentoo/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Ovmf's patchset
|
||||
if use ovmf; then
|
||||
if [[ -n ${OVMF_VER} ]];then
|
||||
einfo "Try to apply Ovmf patch set"
|
||||
pushd "${WORKDIR}"/edk2-*/ > /dev/null
|
||||
eapply "${WORKDIR}"/patches-ovmf
|
||||
popd > /dev/null
|
||||
fi
|
||||
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
|
||||
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
|
||||
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
|
||||
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
|
||||
fi
|
||||
|
||||
# ipxe
|
||||
if use ipxe; then
|
||||
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/_ipxe.tar.gz || die
|
||||
|
||||
# gcc 10
|
||||
cp "${WORKDIR}/patches-gentoo/xen-tools-4.13.0-ipxe-gcc10.patch" tools/firmware/etherboot/patches/ipxe-gcc10.patch || die
|
||||
echo ipxe-gcc10.patch >> tools/firmware/etherboot/patches/series || die
|
||||
fi
|
||||
|
||||
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
|
||||
|
||||
# Fix texi2html build error with new texi2html, qemu.doc.html
|
||||
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
|
||||
|
||||
use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
|
||||
sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
|
||||
-i tools/firmware/Makefile || die
|
||||
|
||||
# Drop .config, fixes to gcc-4.6
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
# drop flags
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
unset CPPFLAGS
|
||||
|
||||
if ! use pygrub; then
|
||||
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use python; then
|
||||
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
|
||||
fi
|
||||
|
||||
if ! use hvm; then
|
||||
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
|
||||
# Bug 351648
|
||||
elif ! use x86 && ! has x86 $(get_all_abis); then
|
||||
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
|
||||
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
|
||||
export CPATH="${WORKDIR}"/extra-headers
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
if use sdl; then
|
||||
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
|
||||
tools/Makefile || die
|
||||
else
|
||||
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
|
||||
tools/qemu-xen-traditional/xen-setup || die
|
||||
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
|
||||
tools/Makefile || die
|
||||
fi
|
||||
else
|
||||
# Don't bother with qemu, only needed for fully virtualised guests
|
||||
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
|
||||
fi
|
||||
|
||||
# Reset bash completion dir; Bug 472438
|
||||
sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
|
||||
-i Config.mk || die
|
||||
sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
|
||||
|
||||
# xencommons, Bug #492332, sed lighter weight than patching
|
||||
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
|
||||
-i tools/hotplug/Linux/init.d/xencommons.in || die
|
||||
|
||||
# fix bashishm
|
||||
sed -e '/Usage/s/\$//g' \
|
||||
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
|
||||
|
||||
# respect multilib, usr/lib/libcacard.so.0.0.0
|
||||
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
|
||||
-i tools/qemu-xen/configure || die
|
||||
|
||||
#bug 518136, don't build 32bit exactuable for nomultilib profile
|
||||
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
|
||||
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
|
||||
fi
|
||||
|
||||
# uncomment lines in xl.conf
|
||||
sed -e 's:^#autoballoon=:autoballoon=:' \
|
||||
-e 's:^#lockfile=:lockfile=:' \
|
||||
-e 's:^#vif.default.script=:vif.default.script=:' \
|
||||
-i tools/examples/xl.conf || die
|
||||
|
||||
# disable capstone (Bug #673474)
|
||||
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
# disable glusterfs
|
||||
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
|
||||
-i tools/Makefile || die
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf="--prefix=${PREFIX}/usr \
|
||||
--libdir=${PREFIX}/usr/$(get_libdir) \
|
||||
--libexecdir=${PREFIX}/usr/libexec \
|
||||
--localstatedir=${EPREFIX}/var \
|
||||
--disable-werror \
|
||||
--disable-xen \
|
||||
--enable-tools \
|
||||
--enable-docs \
|
||||
$(use_enable api xenapi) \
|
||||
$(use_enable ipxe) \
|
||||
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '') \
|
||||
$(use_enable ocaml ocamltools) \
|
||||
$(use_enable ovmf) \
|
||||
$(use_enable pam) \
|
||||
$(use_enable rombios) \
|
||||
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
|
||||
"
|
||||
|
||||
use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
|
||||
use system-qemu && myconf+=" --with-system-qemu=/usr/bin/qemu-system-x86_64"
|
||||
use amd64 && myconf+=" $(use_enable qemu-traditional)"
|
||||
tc-ld-disable-gold # Bug 669570
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
|
||||
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
|
||||
|
||||
if use doc; then
|
||||
emake -C docs build
|
||||
else
|
||||
emake -C docs man-pages
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Override auto-detection in the build system, bug #382573
|
||||
export INITD_DIR=/tmp/init.d
|
||||
export CONFIG_LEAF_DIR=../tmp/default
|
||||
|
||||
# Let the build system compile installed Python modules.
|
||||
local PYTHONDONTWRITEBYTECODE
|
||||
export PYTHONDONTWRITEBYTECODE
|
||||
|
||||
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
|
||||
XEN_PYTHON_NATIVE_INSTALL=y install-tools
|
||||
|
||||
# Created at runtime
|
||||
rm -rv "${ED}/var/run" || die
|
||||
|
||||
# Fix the remaining Python shebangs.
|
||||
python_fix_shebang "${D}"
|
||||
|
||||
# Remove RedHat-specific stuff
|
||||
rm -rf "${D}"/tmp || die
|
||||
|
||||
if use doc; then
|
||||
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
|
||||
dodoc -r docs/{pdf,txt}
|
||||
else
|
||||
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
|
||||
fi
|
||||
dodoc ${DOCS[@]}
|
||||
|
||||
newconfd "${FILESDIR}"/xendomains.confd xendomains
|
||||
newconfd "${FILESDIR}"/xenstored.confd xenstored
|
||||
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
|
||||
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
|
||||
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
|
||||
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
|
||||
newinitd "${FILESDIR}"/xencommons.initd xencommons
|
||||
newconfd "${FILESDIR}"/xencommons.confd xencommons
|
||||
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
|
||||
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
|
||||
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
|
||||
|
||||
if use screen; then
|
||||
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
|
||||
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
|
||||
keepdir /var/log/xen-consoles
|
||||
fi
|
||||
|
||||
# For -static-libs wrt Bug 384355
|
||||
if ! use static-libs; then
|
||||
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
|
||||
fi
|
||||
|
||||
# for xendomains
|
||||
keepdir /etc/xen/auto
|
||||
|
||||
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
|
||||
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
|
||||
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
|
||||
|
||||
keepdir /var/lib/xen/dump
|
||||
keepdir /var/lib/xen/xenpaging
|
||||
keepdir /var/lib/xenstored
|
||||
keepdir /var/log/xen
|
||||
|
||||
if use python; then
|
||||
python_domodule "${S}/tools/xenstat/libxenstat/bindings/swig/python/xenstat.py"
|
||||
python_domodule "${S}/tools/xenstat/libxenstat/bindings/swig/python/_xenstat.so"
|
||||
fi
|
||||
|
||||
python_optimize
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide and the offical wiki page:"
|
||||
elog "https://wiki.gentoo.org/wiki/Xen"
|
||||
elog "https://wiki.xen.org/wiki/Main_Page"
|
||||
elog ""
|
||||
elog "Recommended to utilise the xencommons script to config system at boot"
|
||||
elog "Add by use of rc-update on completion of the install"
|
||||
|
||||
if ! use hvm; then
|
||||
echo
|
||||
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
|
||||
elog "support enable the hvm use flag."
|
||||
elog "An x86 or amd64 system is required to build HVM support."
|
||||
fi
|
||||
|
||||
if use qemu; then
|
||||
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
|
||||
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
|
||||
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
|
||||
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
|
||||
fi
|
||||
}
|
@ -1,17 +1,11 @@
|
||||
AUX xen-4.11-efi.patch 1971 BLAKE2B b24f9315cff7f2de2a945088363429b9f4dd7a4101d3f1c0d4bf9733189808f5e1c47f1d90d1784f17fa52ca1626972c81d20c5e1ee3d42d082cdefcf67eb8dc SHA512 17208dc107f4ae4c5ec226c2ac05126817134fb6084cd8923204dc1b014e645e12c34cd11296319127e595ccbf17747931e9df78218bf49814f66e3cc6a789fd
|
||||
AUX xen-4.14-efi.patch 1969 BLAKE2B dec62e9b04ce23025443caa68df2fd69c50a3fdf650bf26047b28f3a72d1aa58124127274cd2c1373a4e133784b2691145c49c9a182bd635aa9c60bb1e45a0c1 SHA512 3e32aac5ba2ec371a3877d64532e8d134c3b4fe3a6644477ee8ecf56cbb8378b20f9d5d7415bec891d96910550a787848779c82ee4b9d57046f4c13235531ea0
|
||||
DIST xen-4.13.2-upstream-patches-4.tar.xz 65324 BLAKE2B 0e71e4600fffcf1341a52103a6318485c1da54101ec59dbdb9824be5a5ed1f977135a9c3e4ce48cf14922aa0a2e3ff5097dc870286e3b142d060c22d78079cb3 SHA512 3f0e41b685655c7753204862ea6b8e502ff4b4f76e4788ca07ab93a4bb3c636d24ad933c578f7c6e4c866cfb0d6b7b7234124da7c2fed0a4b34f2fbe401c56e1
|
||||
DIST xen-4.13.2-upstream-patches-5.tar.xz 76580 BLAKE2B 8eeab100c14d769174e7d935d4e081ffc2d72b771f8022ce5c31b89d860ddba5381baf55b87443dc3bc555b404595492d30bc7f2a103c77762004acfce70446e SHA512 5dd5c63267e9542626315efec94642901cff55f4a1f8148c58f86677254381242fce3d6c5c0ae72665b452441c54647d0b9a132a2a18ffb4ff7eaad86ef227de
|
||||
DIST xen-4.13.2-upstream-patches-6.tar.xz 80980 BLAKE2B a20643c4f89f197e4001c0181249bc1a22b60874bc077ba2abee716b8e64bbbea0885a64632f3120960425a741328ceba1b44dc10a7a24039b328e1ded28f752 SHA512 0b097dfb04404ec6c609d35d924b3d2306c5f2de0501aa0b8e007e0af9a4ef394fae2d736435401bf8bd1fd661171c71ba712585bdb195649e3350ef9f953115
|
||||
DIST xen-4.13.2.tar.gz 39037826 BLAKE2B ad2b7c3003ca29e5e60a85c581f706ef87d99eadf939ed36ebe8f6698582f7a29dbdaf502039b60a0afe7ad4ae6ce89713e69dc8b8a7d5abe65063da7f1baa5b SHA512 cd3092281c97e9421e303aa288aac04dcccd5536ba7c0ff4d51fbf3d07b5ffacfe3456ba06f5cf63577dafbf8cf3a5d9825ceb5e9ef8ca1427900cc3e57b50a3
|
||||
AUX xen-4.15-efi.patch 2181 BLAKE2B a06b944dea37c3dfdbe4344191ec4a286348f46bcccf1b5a75f061e55b961d767972456803b8c9aa15120b2b2497651495e903925bf93b04c483e0713d9117a9 SHA512 7ec52fc65b5b8a22877c941f0ab6f249ba1d7b40ad7d50d8f0ac793069cc0eb85b1e5394ce81adf60fa23b01ecc8ce983e6c508b8e0d22189dc46e2c1ad8c1b4
|
||||
DIST xen-4.13.3.tar.gz 39044539 BLAKE2B 5d0e57c76e12e1b86b78bbf561e947d70b9569a24412617a640346d2358b141a2741e7a3be454df52d198ad63e58b1519288de62330417c70e72445703f3fac2 SHA512 622127d824b9c49b57282a887fb404e0bad05ff60bccade82e4e0e9b5ad975ff9aa1fba83392e6d8379e9a15340e8ae9785c0913eb11027816e4600432eea6b6
|
||||
DIST xen-4.14.1-upstream-patches-2.tar.xz 22920 BLAKE2B 890cd9bcc3c72b4ed192476a913de0377d50ddeb180e0d6dc4720e86662387a699ad74b263adf2b867b2421fcf3efdcacaa17bf581643afc50c9dc7e8a3dfc60 SHA512 ca0e53f40fe23d9a6c6374b460fcc0c8063e511f03ca86c02291fcb73bf9f91594de6fd615609997e0aac2e9c59ccc8512e4151a1d2646a70f3b5bacd95ad325
|
||||
DIST xen-4.14.1-upstream-patches-3.tar.xz 27864 BLAKE2B 69a67e863a30c0079f7955dd5306f69890a4f6db91d4cf2d1806a2bbd8afad88db7789c7eda8da0ff2a945da04916ff4ab5eaa9e529a417112ae01e31151d0dc SHA512 19e5ef39616fffbff20b2f658d61e50e21741fe3c5c4ca89f67e72a1606b3a593f93e9090fb0b5c76c1c801f931c237d2be6329bd174fa911d66b81ad4a332dd
|
||||
DIST xen-4.14.1.tar.gz 39970115 BLAKE2B 21e5838b2b4d78420dcaaae2b8fc98ac876230217e6a3764aa643920150b8cef96025663e6a2fc423ab15f7f470b62547e91ce1be0337fc78f00c148c7ff40ab SHA512 c75cbec82793435f5a7026626ffdb2e9a2166b42d2be4b2f1194240e0312458124f0ebd53eeb02ce7330c22afe402a28a96b32f8af66e41e9416fe94535724c9
|
||||
EBUILD xen-4.13.2-r5.ebuild 4462 BLAKE2B 23b67cc2be75f65f8df0a814ebc7e3c4af8f238f399d6a9ddf4301a6a66835ab8948e1e8aa3c58cdb34015e2060762be7aeaca4c1e1ee9a752d56960ea656fa0 SHA512 b9ff56e040ba0a3062c392e8e8ad553ba90039589dcab0898e7ac4c9c988988faae93cdc5e2b50c03c1159581640054ba32d794da77051a1a598b51305e31a0e
|
||||
EBUILD xen-4.13.2-r6.ebuild 4463 BLAKE2B 2d9284848a1d31d2500fd6e3944b983f21ca59bd624714f2bc0603844d8c98fc467c1bf64d0fdf43d8eb3f33c7fad2f42c11f0407e64bc13acfb7f8eecd7b1cb SHA512 30661e28c232c1e28cdb4f97a35eaa962e122480124dffd3686ccfdc34d104449de07ee73d22a49d91ebdc62c385493de48bf6eb7aa8b97a8f07234fc647d9c2
|
||||
EBUILD xen-4.13.2-r7.ebuild 4463 BLAKE2B 451be1f8e4cc97f6f5256b2e4acacec0120f2e0502aee689d4b21ebfb4151124c63e9a81ac493a4eabcb5448b95132768d89aa5351f2f792c46f60c2b5fb8968 SHA512 3e8c15495fe6f33addfff272c75d19c2c5ef447e74dde562aac6a18981d629fe447cbde7a5c44aa11a577d204b0968cb11a6fa8d59cd21b43af178a68480150e
|
||||
DIST xen-4.14.2.tar.gz 39973157 BLAKE2B db5d3570f79e0fd97872f5e5dd57a4eb39e005728387bfef3b51fabe1c693cfd8108d09b1026f5a5a7eb79de71be6f4af36d252f7e0b35a65a1567b7949e3e29 SHA512 83c9333b70dbee3e29c6bf08e5ad030676e6c4a32b976f3f5e6a8f8d0dd9e4898bac88dd8e1c9d2ad3509cebb5d212e1745f9392a469d7afeb841d79801ccf39
|
||||
DIST xen-4.15.0-upstream-patches-0.tar.xz 15744 BLAKE2B e2abb68524a7c190db8d91beb79731aea5290e82f54fb21218739dab666f6f5ea85c203575ec248b46830f1862408d50d3ceea1104fcd9325babfccf3574c515 SHA512 f1a2800d15a61f08eda4d6bafaead95a9d72cc9e4d90a19278d89c696b7e2d5d6353b28dba7ed0eb0c9aeb8604d3697db6a8f4ac38047e2510279d88181752f9
|
||||
DIST xen-4.15.0.tar.gz 40785399 BLAKE2B 8b0530f5516c39656506f4bb705952da0555a8ab7f47323473b171caeb7692f3107e9d94f13171d40576600064589eed35f4d210af02db4cc4706dd4fc202100 SHA512 93683b8a97387ca5f003c635a11d163e61c87dbdc9a03081f9155fe87b49f1dfa74ce243fcd5e04dc009353a36e2375b786f1ebde828b5951a094cd64197b4c7
|
||||
EBUILD xen-4.13.3.ebuild 4461 BLAKE2B da41c70eb656b08ed46b7f6147c6b2d4b68368a0c3b0fe0bcb35d5ac279007158420b1035dc0ba6ab37565dc5345062bcb3689d932bed686bb240e06ac255ea8 SHA512 fbbb200018af4aa700e27890eff7d949f47c60187d815dd682f093b2364c78e33d194c5e66c19be09cb3f5d5be91f61e5c47782b3bfaab94aa3a29e572b22fe8
|
||||
EBUILD xen-4.14.1-r2.ebuild 4463 BLAKE2B c782dfe3b5194e243a8498b7412ce4968ec1ea540a4c9936b742afb58cefe9e18c27a39e93806847f43af0490bab1653cce315e66b1a272fbff24de9d09034c8 SHA512 5dd673fbee69a5b112e550baf8c2f7c7fe5d82dd9d5e18e31e4184619352a79135a3bf2618a045ddaee45046705f3c2862a9b2691b66cd3b92147846c3e17f8b
|
||||
EBUILD xen-4.14.1-r3.ebuild 4463 BLAKE2B b5686d303cca46753ea5594bdea94d002d03abd1ba6874d8a95ea2f9755aa47b246b23279ef7eec9d339b316582dde5e3823989f86f18b495d8a37eee4e3c129 SHA512 12f094a2d7dc120a3b51f4298114ad8990fcf0aeed1278cee25082ea698e4c8482d34d617f7d2b8042581fc87e38a0a4369f7c95f713428d8c9f986dd2157113
|
||||
EBUILD xen-4.14.2.ebuild 4592 BLAKE2B d2b05087450b38ac3d58079fc965374b751a83b1a4f83d4a36fab014114f19b6f58802f8102b419bc6c3d74fd722b3e2a378b52dc521137a455a6ec124fa48b3 SHA512 10e739e2f53753ca7b794924b0a3b25b32133b7d7b81c60e3bbff83edf3b34c101fe10023aa70465d6954a888f179f760150f3d3d5b2e9a9386c78db463e4291
|
||||
EBUILD xen-4.15.0.ebuild 4593 BLAKE2B 378bda1e7af00a455bb4e8064724b4e919d7df997621594f03c80ea56da920663ebc590949ffc5498d2011057f70f427dbd8d9c89e6422effdc9cf2628827006 SHA512 f66ee9ad8a3b5fb012a45da8c0bb3edf73331c217b7b87117036c0cb4148d39be346604e0aba50b3e8928da29be3bd2bfd37a2176e4427eaa175a4ca617ead08
|
||||
MISC metadata.xml 675 BLAKE2B aee4c4775c388078e51a97212be21fee3ddd4771121a129b7ddf0e2454dc3bd91f4fa1a2ce2a2057c655a0d32ae9631c9fd29a77a247601867949be4aa79de26 SHA512 f77204ce3cffb9c453c779de4cb7e41591972c5b59567a88d02ba079bd6f827d4aec23d9ce7c28b3affcadd370858cb1e66f6448b32e0dfb795af6a1be8598d2
|
||||
|
@ -0,0 +1,38 @@
|
||||
diff --git a/xen/Makefile b/xen/Makefile
|
||||
index acb2d28..b9dbd9c 100644
|
||||
--- a/xen/Makefile
|
||||
+++ b/xen/Makefile
|
||||
@@ -272,9 +272,17 @@ _install: Z=$(CONFIG_XEN_INSTALL_SUFFIX)
|
||||
_install: $(TARGET)$(CONFIG_XEN_INSTALL_SUFFIX)
|
||||
[ -d $(D)$(BOOT_DIR) ] || $(INSTALL_DIR) $(D)$(BOOT_DIR)
|
||||
$(INSTALL_DATA) $(TARGET)$(Z) $(D)$(BOOT_DIR)/$(T)-$(XEN_FULLVERSION)$(Z)
|
||||
- ln -f -s $(T)-$(XEN_FULLVERSION)$(Z) $(D)$(BOOT_DIR)/$(T)-$(XEN_VERSION).$(XEN_SUBVERSION)$(Z)
|
||||
- ln -f -s $(T)-$(XEN_FULLVERSION)$(Z) $(D)$(BOOT_DIR)/$(T)-$(XEN_VERSION)$(Z)
|
||||
- ln -f -s $(T)-$(XEN_FULLVERSION)$(Z) $(D)$(BOOT_DIR)/$(T)$(Z)
|
||||
+
|
||||
+ if [ 'x$(EFI_VENDOR)' == 'x' ]; then \
|
||||
+ ln -f -s $(T)-$(XEN_FULLVERSION)$(Z) $(D)$(BOOT_DIR)/$(T)-$(XEN_VERSION).$(XEN_SUBVERSION)$(Z); \
|
||||
+ ln -f -s $(T)-$(XEN_FULLVERSION)$(Z) $(D)$(BOOT_DIR)/$(T)-$(XEN_VERSION)$(Z); \
|
||||
+ ln -f -s $(T)-$(XEN_FULLVERSION)$(Z) $(D)$(BOOT_DIR)/$(T)$(Z); \
|
||||
+ else \
|
||||
+ $(INSTALL_DATA) $(TARGET)$(Z) $(D)$(BOOT_DIR)/$(T)-$(XEN_VERSION).$(XEN_SUBVERSION)$(Z); \
|
||||
+ $(INSTALL_DATA) $(TARGET)$(Z) $(D)$(BOOT_DIR)/$(T)-$(XEN_VERSION)$(Z); \
|
||||
+ $(INSTALL_DATA) $(TARGET)$(Z) $(D)$(BOOT_DIR)/$(T)$(Z); \
|
||||
+ fi;
|
||||
+
|
||||
[ -d "$(D)$(DEBUG_DIR)" ] || $(INSTALL_DIR) $(D)$(DEBUG_DIR)
|
||||
$(INSTALL_DATA) $(TARGET)-syms $(D)$(DEBUG_DIR)/$(T)-syms-$(XEN_FULLVERSION)
|
||||
$(INSTALL_DATA) $(TARGET)-syms.map $(D)$(DEBUG_DIR)/$(T)-syms-$(XEN_FULLVERSION).map
|
||||
diff --git a/xen/arch/x86/Makefile b/xen/arch/x86/Makefile
|
||||
index b6567c4..0320a4a 100644
|
||||
--- a/xen/arch/x86/Makefile
|
||||
+++ b/xen/arch/x86/Makefile
|
||||
@@ -123,7 +123,7 @@ ifneq ($(efi-y),)
|
||||
# Check if the compiler supports the MS ABI.
|
||||
export XEN_BUILD_EFI := $(shell $(CC) $(XEN_CFLAGS) -c efi/check.c -o efi/check.o 2>/dev/null && echo y)
|
||||
# Check if the linker supports PE.
|
||||
-EFI_LDFLAGS = $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10 --strip-debug
|
||||
+EFI_LDFLAGS = -mi386pep $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10 --strip-debug
|
||||
XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(shell $(LD) $(EFI_LDFLAGS) -o efi/check.efi efi/check.o 2>/dev/null && echo y))
|
||||
CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_EFI
|
||||
# Check if the linker produces fixups in PE by default (we need to disable it doing so for now).
|
@ -1,165 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6..9} )
|
||||
|
||||
inherit flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
|
||||
SRC_URI=""
|
||||
else
|
||||
KEYWORDS="amd64 ~arm -x86"
|
||||
UPSTREAM_VER=4
|
||||
SECURITY_VER=
|
||||
GENTOO_VER=
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/${MY_P}.tar.gz
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The Xen virtual machine monitor"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="debug efi flask"
|
||||
|
||||
DEPEND="${PYTHON_DEPS}
|
||||
efi? ( >=sys-devel/binutils-2.22[multitarget] )
|
||||
!efi? ( >=sys-devel/binutils-2.22 )"
|
||||
RDEPEND=""
|
||||
PDEPEND="~app-emulation/xen-tools-${PV}"
|
||||
|
||||
# no tests are available for the hypervisor
|
||||
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
|
||||
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
|
||||
RESTRICT="test splitdebug strip"
|
||||
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="boot/xen-syms-${PV}"
|
||||
|
||||
REQUIRED_USE="arm? ( debug )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]]; then
|
||||
if use amd64; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
|
||||
if use flask ; then
|
||||
export "XSM_ENABLE=y"
|
||||
export "FLASK_ENABLE=y"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Upstream's patchset
|
||||
[[ -n ${UPSTREAM_VER} ]] && eapply "${WORKDIR}"/patches-upstream
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf
|
||||
|
||||
local i
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Gentoo's patchset
|
||||
[[ -n ${GENTOO_VER} ]] && eapply "${WORKDIR}"/patches-gentoo
|
||||
|
||||
eapply "${FILESDIR}"/${PN}-4.11-efi.patch
|
||||
|
||||
# Drop .config
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
if use efi; then
|
||||
export EFI_VENDOR="gentoo"
|
||||
export EFI_MOUNTPOINT="/boot"
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
|
||||
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
# remove flags
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
|
||||
tc-ld-disable-gold # Bug 700374
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Send raw LDFLAGS so that --as-needed works
|
||||
emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
# The 'make install' doesn't 'mkdir -p' the subdirs
|
||||
if use efi; then
|
||||
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
|
||||
fi
|
||||
|
||||
emake LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" DESTDIR="${D}" -C xen ${myopt} install
|
||||
|
||||
# make install likes to throw in some extra EFI bits if it built
|
||||
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide:"
|
||||
elog " https://wiki.gentoo.org/wiki/Xen"
|
||||
|
||||
use efi && einfo "The efi executable is installed in /boot/efi/gentoo"
|
||||
|
||||
elog "You can optionally block the installation of /boot/xen-syms by an entry"
|
||||
elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
|
||||
elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
|
||||
|
||||
ewarn
|
||||
ewarn "Xen 4.12+ changed the default scheduler to credit2 which can cause"
|
||||
ewarn "domU lockups on multi-cpu systems. The legacy credit scheduler seems"
|
||||
ewarn "to work fine."
|
||||
ewarn
|
||||
ewarn "Add sched=credit to xen command line options to use the legacy scheduler."
|
||||
ewarn
|
||||
ewarn "https://wiki.gentoo.org/wiki/Xen#Xen_domU_hanging_with_Xen_4.12.2B"
|
||||
}
|
@ -1,165 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6..9} )
|
||||
|
||||
inherit flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
|
||||
SRC_URI=""
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm -x86"
|
||||
UPSTREAM_VER=5
|
||||
SECURITY_VER=
|
||||
GENTOO_VER=
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/${MY_P}.tar.gz
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The Xen virtual machine monitor"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="debug efi flask"
|
||||
|
||||
DEPEND="${PYTHON_DEPS}
|
||||
efi? ( >=sys-devel/binutils-2.22[multitarget] )
|
||||
!efi? ( >=sys-devel/binutils-2.22 )"
|
||||
RDEPEND=""
|
||||
PDEPEND="~app-emulation/xen-tools-${PV}"
|
||||
|
||||
# no tests are available for the hypervisor
|
||||
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
|
||||
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
|
||||
RESTRICT="test splitdebug strip"
|
||||
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="boot/xen-syms-${PV}"
|
||||
|
||||
REQUIRED_USE="arm? ( debug )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]]; then
|
||||
if use amd64; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
|
||||
if use flask ; then
|
||||
export "XSM_ENABLE=y"
|
||||
export "FLASK_ENABLE=y"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Upstream's patchset
|
||||
[[ -n ${UPSTREAM_VER} ]] && eapply "${WORKDIR}"/patches-upstream
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf
|
||||
|
||||
local i
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Gentoo's patchset
|
||||
[[ -n ${GENTOO_VER} ]] && eapply "${WORKDIR}"/patches-gentoo
|
||||
|
||||
eapply "${FILESDIR}"/${PN}-4.11-efi.patch
|
||||
|
||||
# Drop .config
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
if use efi; then
|
||||
export EFI_VENDOR="gentoo"
|
||||
export EFI_MOUNTPOINT="/boot"
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
|
||||
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
# remove flags
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
|
||||
tc-ld-disable-gold # Bug 700374
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Send raw LDFLAGS so that --as-needed works
|
||||
emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
# The 'make install' doesn't 'mkdir -p' the subdirs
|
||||
if use efi; then
|
||||
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
|
||||
fi
|
||||
|
||||
emake LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" DESTDIR="${D}" -C xen ${myopt} install
|
||||
|
||||
# make install likes to throw in some extra EFI bits if it built
|
||||
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide:"
|
||||
elog " https://wiki.gentoo.org/wiki/Xen"
|
||||
|
||||
use efi && einfo "The efi executable is installed in /boot/efi/gentoo"
|
||||
|
||||
elog "You can optionally block the installation of /boot/xen-syms by an entry"
|
||||
elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
|
||||
elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
|
||||
|
||||
ewarn
|
||||
ewarn "Xen 4.12+ changed the default scheduler to credit2 which can cause"
|
||||
ewarn "domU lockups on multi-cpu systems. The legacy credit scheduler seems"
|
||||
ewarn "to work fine."
|
||||
ewarn
|
||||
ewarn "Add sched=credit to xen command line options to use the legacy scheduler."
|
||||
ewarn
|
||||
ewarn "https://wiki.gentoo.org/wiki/Xen#Xen_domU_hanging_with_Xen_4.12.2B"
|
||||
}
|
@ -1,165 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6..9} )
|
||||
|
||||
inherit flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
|
||||
|
||||
MY_PV=${PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
|
||||
SRC_URI=""
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm -x86"
|
||||
UPSTREAM_VER=2
|
||||
SECURITY_VER=
|
||||
GENTOO_VER=
|
||||
|
||||
[[ -n ${UPSTREAM_VER} ]] && \
|
||||
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz
|
||||
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
|
||||
[[ -n ${SECURITY_VER} ]] && \
|
||||
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
|
||||
[[ -n ${GENTOO_VER} ]] && \
|
||||
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
|
||||
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/${MY_P}.tar.gz
|
||||
${UPSTREAM_PATCHSET_URI}
|
||||
${SECURITY_PATCHSET_URI}
|
||||
${GENTOO_PATCHSET_URI}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The Xen virtual machine monitor"
|
||||
HOMEPAGE="https://www.xenproject.org"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="debug efi flask"
|
||||
|
||||
DEPEND="${PYTHON_DEPS}
|
||||
efi? ( >=sys-devel/binutils-2.22[multitarget] )
|
||||
!efi? ( >=sys-devel/binutils-2.22 )"
|
||||
RDEPEND=""
|
||||
PDEPEND="~app-emulation/xen-tools-${PV}"
|
||||
|
||||
# no tests are available for the hypervisor
|
||||
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
|
||||
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
|
||||
RESTRICT="test splitdebug strip"
|
||||
|
||||
# Approved by QA team in bug #144032
|
||||
QA_WX_LOAD="boot/xen-syms-${PV}"
|
||||
|
||||
REQUIRED_USE="arm? ( debug )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
if [[ -z ${XEN_TARGET_ARCH} ]]; then
|
||||
if use amd64; then
|
||||
export XEN_TARGET_ARCH="x86_64"
|
||||
elif use arm; then
|
||||
export XEN_TARGET_ARCH="arm32"
|
||||
elif use arm64; then
|
||||
export XEN_TARGET_ARCH="arm64"
|
||||
else
|
||||
die "Unsupported architecture!"
|
||||
fi
|
||||
fi
|
||||
|
||||
if use flask ; then
|
||||
export "XSM_ENABLE=y"
|
||||
export "FLASK_ENABLE=y"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Upstream's patchset
|
||||
[[ -n ${UPSTREAM_VER} ]] && eapply "${WORKDIR}"/patches-upstream
|
||||
|
||||
# Security patchset
|
||||
if [[ -n ${SECURITY_VER} ]]; then
|
||||
einfo "Try to apply Xen Security patch set"
|
||||
# apply main xen patches
|
||||
# Two parallel systems, both work side by side
|
||||
# Over time they may concdense into one. This will suffice for now
|
||||
source "${WORKDIR}"/patches-security/${PV}.conf
|
||||
|
||||
local i
|
||||
for i in ${XEN_SECURITY_MAIN}; do
|
||||
eapply "${WORKDIR}"/patches-security/xen/$i
|
||||
done
|
||||
fi
|
||||
|
||||
# Gentoo's patchset
|
||||
[[ -n ${GENTOO_VER} ]] && eapply "${WORKDIR}"/patches-gentoo
|
||||
|
||||
eapply "${FILESDIR}"/${PN}-4.14-efi.patch
|
||||
|
||||
# Drop .config
|
||||
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
|
||||
|
||||
if use efi; then
|
||||
export EFI_VENDOR="gentoo"
|
||||
export EFI_MOUNTPOINT="/boot"
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
|
||||
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
# remove flags
|
||||
unset CFLAGS
|
||||
unset LDFLAGS
|
||||
unset ASFLAGS
|
||||
|
||||
tc-ld-disable-gold # Bug 700374
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Send raw LDFLAGS so that --as-needed works
|
||||
emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local myopt
|
||||
use debug && myopt="${myopt} debug=y"
|
||||
|
||||
# The 'make install' doesn't 'mkdir -p' the subdirs
|
||||
if use efi; then
|
||||
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
|
||||
fi
|
||||
|
||||
emake LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" DESTDIR="${D}" -C xen ${myopt} install
|
||||
|
||||
# make install likes to throw in some extra EFI bits if it built
|
||||
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide:"
|
||||
elog " https://wiki.gentoo.org/wiki/Xen"
|
||||
|
||||
use efi && einfo "The efi executable is installed in /boot/efi/gentoo"
|
||||
|
||||
elog "You can optionally block the installation of /boot/xen-syms by an entry"
|
||||
elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
|
||||
elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
|
||||
|
||||
ewarn
|
||||
ewarn "Xen 4.12+ changed the default scheduler to credit2 which can cause"
|
||||
ewarn "domU lockups on multi-cpu systems. The legacy credit scheduler seems"
|
||||
ewarn "to work fine."
|
||||
ewarn
|
||||
ewarn "Add sched=credit to xen command line options to use the legacy scheduler."
|
||||
ewarn
|
||||
ewarn "https://wiki.gentoo.org/wiki/Xen#Xen_domU_hanging_with_Xen_4.12.2B"
|
||||
}
|
Binary file not shown.
@ -0,0 +1,82 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit systemd tmpfiles
|
||||
|
||||
DESCRIPTION="Free and Open, Distributed, RESTful Search Engine"
|
||||
HOMEPAGE="https://www.elastic.co/elasticsearch/"
|
||||
SRC_URI="https://artifacts.elastic.co/downloads/${PN}/${P}-no-jdk-linux-x86_64.tar.gz"
|
||||
LICENSE="Apache-2.0 BSD-2 Elastic-2.0 LGPL-3 MIT public-domain"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
RDEPEND="acct-group/elasticsearch
|
||||
acct-user/elasticsearch
|
||||
virtual/jre"
|
||||
|
||||
QA_PREBUILT="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
|
||||
QA_PRESTRIPPED="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
rm LICENSE.txt NOTICE.txt || die
|
||||
rmdir logs || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
keepdir /etc/${PN}
|
||||
keepdir /etc/${PN}/scripts
|
||||
|
||||
insinto /etc/${PN}
|
||||
doins -r config/.
|
||||
rm -r config || die
|
||||
|
||||
fowners root:${PN} /etc/${PN}
|
||||
fperms 2750 /etc/${PN}
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r .
|
||||
|
||||
exeinto /usr/share/${PN}/bin
|
||||
doexe "${FILESDIR}/elasticsearch-systemd-pre-exec"
|
||||
|
||||
fperms -R +x /usr/share/${PN}/bin
|
||||
fperms -R +x /usr/share/${PN}/modules/x-pack-ml/platform/linux-x86_64/bin
|
||||
|
||||
keepdir /var/{lib,log}/${PN}
|
||||
fowners ${PN}:${PN} /var/{lib,log}/${PN}
|
||||
fperms 0750 /var/{lib,log}/${PN}
|
||||
dodir /usr/share/${PN}/plugins
|
||||
|
||||
insinto /etc/sysctl.d
|
||||
newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
|
||||
|
||||
newconfd "${FILESDIR}/${PN}.conf.4" ${PN}
|
||||
newinitd "${FILESDIR}/${PN}.init.8" ${PN}
|
||||
|
||||
systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
|
||||
systemd_newunit "${FILESDIR}"/${PN}.service.3 ${PN}.service
|
||||
|
||||
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles.d ${PN}.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
tmpfiles_process /usr/lib/tmpfiles.d/${PN}.conf
|
||||
|
||||
elog
|
||||
elog "You may create multiple instances of ${PN} by"
|
||||
elog "symlinking the init script:"
|
||||
elog "ln -sf /etc/init.d/${PN} /etc/init.d/${PN}.instance"
|
||||
elog
|
||||
elog "Please make sure you put elasticsearch.yml, log4j2.properties and scripts"
|
||||
elog "from /etc/${PN} into the configuration directory of the instance:"
|
||||
elog "/etc/${PN}/instance"
|
||||
elog
|
||||
ewarn "Please make sure you have proper permissions on /etc/${PN}"
|
||||
ewarn "prior to keystore generation or you may experience startup fails."
|
||||
ewarn "chown root:${PN} /etc/${PN} && chmod 2750 /etc/${PN}"
|
||||
ewarn "chown root:${PN} /etc/${PN}/${PN}.keystore && chmod 0660 /etc/${PN}/${PN}.keystore"
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,7 +1,8 @@
|
||||
AUX pandoc-2.13-trypandoc.patch 402 BLAKE2B 68bba7e2cb0018fa7d6bc7ec82ae24041da01fd3f7cab776993cbdd9118ec71dba6c029187d131b1da254446bade79e1f36f88cbf6a0ddc96b83b7a705ed8905 SHA512 6953a987a43b3393333f6164f72f839b90750acd4dd6fa37197bdaac3e52f1a6dbd56c7724ba331e90aa89715704d237e6c49b747076812b8bde680540c85e37
|
||||
DIST pandoc-2.11.3.1.tar.gz 12924767 BLAKE2B e8e99e3993363730d7e048926754f29b0f8a3e61278efeadd549c45d7434ff627f701bbe5d54203a6592bc12fe0086b107d82e552c3b5e60f5f20afd65ecdae6 SHA512 a1e4b0a598c56b892e95d0c129717b0c56071fe6614583171bf7b661a8c02221cff8927f1a1a6b375236b563cc9585684de1d4eeb2514e81722866c29260fb5e
|
||||
DIST pandoc-2.13.tar.gz 12959060 BLAKE2B 78079d6805d8e1d84f73fd67c3802c2f202523b8e672204b69c6c9aa95e8c003588dbe158db506921bd6444c35aa4b0a8417bb317661fa889c8516cdae96197b SHA512 c894f59e7ff57603fd6a60d11880b9fd6d6e206247346f77070b176fed6f359b3d5a5ba984803717ac4a4e5c038ad0912513da091d4b8672df63af17d21627a8
|
||||
DIST pandoc-2.9.2.1.tar.gz 12586844 BLAKE2B 298cafc88c33f461e6724cb60f4462398ab6a484eb4fcd598a488f4d599abc09f5e85faf16cc4da5c7cfc2274fb2ed1acf5cf9450bcc83c2ec810badfb7d6380 SHA512 35ac491a7e0a2f6d8fe0f2c2ffe265748b13920904e974f88c92b3f82edb2f1c03e28ebef1bc344ead13d566117a5e50707a68edc49f95159157f974210b23b2
|
||||
EBUILD pandoc-2.11.3.1.ebuild 6170 BLAKE2B 097a59b21710bb75bb17f3d93cca07918a041eecc9517d0e8476c44af174f5f6b227d9bc9065d705b552841a12d3068c40e0ac9a64bb36c9c0ee2a0988df3fb5 SHA512 5a2a9266d3285952688af54ed71f7d34eeb0612cf2c1b0d147597132e3393411edc73393759f5389496378d66b27d2e3e5241dcf920121bde8f750486ae9a21c
|
||||
EBUILD pandoc-2.13.ebuild 6269 BLAKE2B 27c7f4940615776bc0d14a50abf29d0c8bd216c45719ac3e9421394a078713f88c26a15bf9396dbeb2ae6679b20fd8e7a8672258d3145f809fca9a4349008712 SHA512 fe3008919f24d5a93019d7fec07082a58ed7a7fcd9a0333e3536199d4a45311fcb24803e3ccc5692ad8c466ec80fc8d28b776d9f6c313dec5f4388a8d6e86879
|
||||
EBUILD pandoc-2.13.ebuild 6315 BLAKE2B 55b79d26d088cfc619767f04c734308b66d33fc5b9feb4b28503d0e2834776904e3d060440fef6f8676e57a7a50a3619311bf632e192348a4ae84c9544b6e1cb SHA512 f9ec4eb2b911733770f186314c6fc708dd352e42f30653ae32126fe375ef0ec19e18695067c53c9eaa79a221fb494fa4dcba489ce3dc157b79584a79524b5466
|
||||
EBUILD pandoc-2.9.2.1.ebuild 6088 BLAKE2B 156eb7fda9f1824886d8d484db802dd645601abe0514fadc21e359ee0f8bb02f4b0ad7ba1c1d77d7e662f9fdda45de16b91ab9f756d383c5e95b2f48811132c5 SHA512 a600bad2ecb5b8b497cc1041685a1b4c98d20cfe9347cec12e5679d197dbcb5b70aa70a42e03f4cd48252713b3a669475bc0d82d076afe3454b9f2e00c5e5e59
|
||||
MISC metadata.xml 941 BLAKE2B 04e284ba78b78c6a88999705ce10650fbe854fd5154bc197b938de1e7b12689382c0c19b04c522366fb51c50f7f0b03d7cdb875ee6840816613bfc96f7d1d7c6 SHA512 2cb5cdae868ec8345655e18303a9fe1bae9c4eef4ee2b2da3f302b2e520af70095f06f78cbf0de1cbed524ddccb43742a73a5ce0e3710876ce83d25f4f19f77f
|
||||
|
@ -0,0 +1,12 @@
|
||||
https://bugs.gentoo.org/785268
|
||||
--- a/pandoc.cabal
|
||||
+++ b/pandoc.cabal
|
||||
@@ -729,7 +729,7 @@ executable trypandoc
|
||||
main-is: trypandoc.hs
|
||||
hs-source-dirs: trypandoc
|
||||
if flag(trypandoc)
|
||||
- build-depends: aeson, http-types, wai >= 0.3, wai-extra >= 3.0.24
|
||||
+ build-depends: aeson, http-types, wai >= 0.3, wai-extra >= 3.0.24, text
|
||||
buildable: True
|
||||
else
|
||||
buildable: False
|
Binary file not shown.
Binary file not shown.
@ -1,3 +1,5 @@
|
||||
DIST semirings-0.5.3.tar.gz 18622 BLAKE2B 70075ef121969652ec666531f42681af759863247811425e43eef590e73b6c0d139274fb57821d28f405f0bd44cc4bed1e48506f08f880aee71f0ff986a30136 SHA512 cd038746d1ce36eb04040954b0a969f17bf67ff45750a221284550724dd0ab563896fc3012c8d58aaf5c11a008b5526088711655e165895a4dead2d054cbf5e7
|
||||
DIST semirings-0.5.4.tar.gz 18490 BLAKE2B d3d67bca474ae7cbf3e016ef17da5ead593250d9cdda051a0fcd84bdb142ced3af74a0f287921e6edcde9916dea4d128f11cc77d8a65bff85470d533565e4749 SHA512 d24a178031e494e1b337585272e0cc960da7935007affc0fea893fe1cac0acd79569a6d8dc9cfddbb7f435a48c34b7aa0d6e589a16741c7c9b5fe00d52b95441
|
||||
EBUILD semirings-0.5.3.ebuild 1104 BLAKE2B 916921b348516dcc88e57d50add3bd1bf14fe6a3240e3373de6225e87304b8ed76d73eb6b524e9109138cf95b8f71a10511719940735d8e4ca306c4da9620dbe SHA512 68269343481d8472e52badad3d60527c5ad5735d908c6c7635083868b66fca50e04fb59f94a34acd7cdae3f646281e4fbe4907a54eca8ea468cda96997df8ac0
|
||||
EBUILD semirings-0.5.4.ebuild 1046 BLAKE2B bdf5a6bba062023d5eb94f1c09171393ac75ef677a988e3095182581c12a6901c45496b9a877ee5dcd16c27456b3081888046e151da726d619cf9d43a7a9d11c SHA512 a06ce8d7f6e2d7da0cf0495aebdfad85524f166cb6776f319f87095d87b8ef8818ce0e4ee7905e3a19c7b45095aa798bbeecb797e0466dfa415f99e55b83fed6
|
||||
MISC metadata.xml 1640 BLAKE2B 354905e265e4d6dd59ee9268381eee54148798051531fee147627053192388785a883eff69f164ea64cd85729f88458d1e86ae1ed0043b77a1a7f5b49319fea9 SHA512 cdc4068b377096f334d4765f13cfd15a84364719f7c4c131b98c1da67a0d426b8a5c4b6c0a3954f0d0d64db755fe7e4c61cc20f4969829a5e6ca6e56309baaa5
|
||||
|
@ -0,0 +1,34 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.7.9999
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="two monoids as one, in holy haskimony"
|
||||
HOMEPAGE="https://github.com/chessai/semirings"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+containers +hashable +unordered-containers"
|
||||
|
||||
RDEPEND="dev-haskell/base-compat-batteries:=[profile?]
|
||||
>=dev-lang/ghc-7.10.1:=[gmp]
|
||||
hashable? ( >=dev-haskell/hashable-1.1:=[profile?] <dev-haskell/hashable-1.4:=[profile?]
|
||||
unordered-containers? ( >=dev-haskell/unordered-containers-0.2:=[profile?] <dev-haskell/unordered-containers-0.3:=[profile?] ) )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-1.22.2.0
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
haskell-cabal_src_configure \
|
||||
$(cabal_flag containers containers) \
|
||||
$(cabal_flag hashable hashable) \
|
||||
$(cabal_flag unordered-containers unordered-containers)
|
||||
}
|
Binary file not shown.
@ -1,3 +1,3 @@
|
||||
DIST assertj-core-2.3.0.tar.gz 611609 BLAKE2B b99a01f67da75bad18e08df739c10943012f75eda9855ed906d407e474eeafe9a30be2e761de0bc791d72a6ff8c7ec8181cd37c6b6c9126f073df82a974163c3 SHA512 da67930d45afde12d317579edb62b5cff546283ea6a252c9b297f21b74404d7cfb63372d339f51733322205b89d35734e97888085387fb1a83c80d5963b05fd3
|
||||
EBUILD assertj-core-2.3.0.ebuild 784 BLAKE2B 108ee65b0b2e90be50f290c56fc68bbe8a905018d384e9523a80c74a9d450fcbfaf0f8fc5e0658a0278c7abf55a6d405b03c9158391ffcd3e69ea493bed1ffef SHA512 2b642a8d64dbade28ded16649d64d5d8dcac7d0b6a74f3dc6007226f53e7d499b2061bc6a67b47ed70220d1f7a77de44d82f5dbf60f98609916575af16ad3d48
|
||||
EBUILD assertj-core-2.3.0.ebuild 791 BLAKE2B 179b72e718720294a5991cd50d60099a40adf0684b522a08d774d7c7bbc3a369cbf88b31a9ac261af16603924ee230c224a632287022929c7f7fc382645680d7 SHA512 47f8cf07b38a49beb0fd284565c6fe95a209d3a08afc6f4e8d390c69be23a962730f83c1f7a1eededa13db7b938e4415b2f504c3486e2e3a111a34ccdcbfc509
|
||||
MISC metadata.xml 639 BLAKE2B 838a5321ee12c23f8d85c9767a15085724c1fb872fefdc9412d67f113de7e1515dca16afe11c5f5fd55790bb9e4feaac3bd26027a33f728655592bb7bbd448cc SHA512 ae023f76f4d256b3efc4b8393370db21600ebd381066691574ef9f02b962bd49996af10eb74fc009b94860e29b3a18d747943ddb3642e0501c14b41bbe428359
|
||||
|
@ -1,4 +1,4 @@
|
||||
AUX junitparams-1.1.1-test.patch 1894 BLAKE2B 8c2aacc726a9d5ac733971f20aa06ab21e1ac31cfa14cf23e11b0541777f22291417710f944fd3f6554791ea8deae022e42ea0af5177f6d97a542d55f510b8d4 SHA512 cae119b7c22b65e42a252d70bc92ad05cae568b2257d9640a498bc7cb15e3917f32c9fafd6b06ded8f739b4825c1662a8c4625114aab1252f4adf58cf52f1f34
|
||||
DIST junitparams-1.1.1.tar.gz 96180 BLAKE2B 0b12d61841d13c893d90f1a28e6b881930a66a9359b368b601a9ee9ced1fa82ff17c9142610e1ed122684e454b86a46d9d2cf451544a900b0a86399484df141c SHA512 77e25bff2f821e8be4f3747c58e550b728aace1dac4ac98f0cd8f99235d6a2b0129e61d7f90063d5f85dd3dd4b0e5d0614e3591633bdcf5dfa452c62a114acae
|
||||
EBUILD junitparams-1.1.1.ebuild 1640 BLAKE2B 8aa9fd7add5c23199e9ad8ecb18a2a379428c5bab592731ccc538df9814e12b956aea7b83c47598f223efc56101a3911a77c8843fbe7cb7366b1d8ed1649cb84 SHA512 b666ca63f3644afba27612eda3788e1388b3fdb48271871135925c10733add9c467bcaa09d55879737c9e9b9338b786be7287c288e3203ad0793b3af69b9d198
|
||||
EBUILD junitparams-1.1.1.ebuild 1647 BLAKE2B 921985087b514855fb1766a234429e41fc9d8f25ebadae753cd501e3db9bd83e8ad150b5fa8f24261e194ec961fc38029b279acc40c24dac8e5edd97f25c036c SHA512 369c71e8b8577aae2696ce92ce3a82bfb6bb36b6328f5f1d86215c198bcac7f8d8abc4eb77f4d0cf5d7216db38ada45ccd12d4b1865af5a02bc5ec99bb68b9bb
|
||||
MISC metadata.xml 441 BLAKE2B bb19fcc1426ce3b532fba9d7bc04c796ff08a132f84860fa5bc51b0b6f6371ab1ed670e1e680b641fd858dcbb934bf83a800ee8e8ca4385d9b900d0f2dd255c3 SHA512 fd015a318961bdb03541ea34ccbd91183ce19abd7d73bb78970ced8e95325ba2525dbaa35f898475347dc59b87b005d57ff9b090d298d270624a46557573b1ba
|
||||
|
Binary file not shown.
@ -1,4 +1,6 @@
|
||||
AUX ferite-1.1.17-bool.patch 1935 BLAKE2B dc926f716e3abfefe48d74e638a35451ec856188e71d76797252b65d2024047543a25739c6bef81133bec0533c480b651dcea845db5dcd76eea70d1c49ed58d3 SHA512 6366d3388185541506c1adc8387c0f6fe91851c257cd4cc2d03afcae3c867e03718885f6e142812c66f429dff493b7e033288b47af54af1eede2a589ba0c1064
|
||||
AUX ferite-1.1.17-slibtool.patch 23689 BLAKE2B 838b3629fa75a652144da2dd9fbce2a075ddd877c78b206b929985453e2988f56c4263006ef9a9450726dd40e08782ca29fd052835ce8111473d6d679a9aa145 SHA512 64e05b7509d357a697eab255c92af61a61c02937dbcabd1306ecbff079565ddc7a239a7c9fe22f7392c81b8b3c7ad224c986f2bf2556f1384a4f848d575345b0
|
||||
AUX ferite-pcre.patch 1356 BLAKE2B f2c3669e33d12dce6e00d22b5884f0770021eb77297997bd94e777b114f8ae24f7ed23b10d7c877a7bffb61fe9ff0e126bd717ea8c8a8fb8186da89178ba4926 SHA512 e867c4b2fc993963bdf17d992d3dd007f636c85b0c13388480cec0f0ff70b6596274c19cd46b0e3ee11064f607b381f7f76888819ef6fb3bdd0804b07b5087fc
|
||||
DIST ferite-1.1.17.tar.gz 2174774 BLAKE2B 5e55ed4101bc5a9c031afef0d9bfcafdc0c498c4ddc712eb17e3059ebd55b925e6b0343113853b946a31a428e5f71c17a2365e629447bb504453b6a7d61358d8 SHA512 475983b865fba492661e59b7470b7e46889f29ed8ba829b112354963fafcbed6ab4d4677579337c1c4ed730c6fe02897743f56edae335ceda6277da975d1098f
|
||||
EBUILD ferite-1.1.17-r1.ebuild 2475 BLAKE2B 6ef8ff0b6b56819240856cd563a7a967972a8bcf552fef6b37c1cf2de74a8e7d155f8fcb837d71689fd5e09c8dd97cd623d603df37a8cd22ea701717ba5ffa83 SHA512 eb816581a69c0ffea72cb3dddd1f7164e86a2523a9980f9da091dd0b87918531f91d455d3ea827f9eed9f3cd07e3b96b228018da0e88111aab24abd33a60f051
|
||||
EBUILD ferite-1.1.17-r1.ebuild 2000 BLAKE2B e17ae71d2d7aabc08aded70d852169e086d9e0f7da54f19653d7d43dd24703f5737f3a3d7e5f45683ccf81fa5d5d51e66f79931be2cdb0d9f22a01613b593fea SHA512 d729a192c0ab752fbb408656fc8bc0156ffa524c39852dcf6bb85535b77de6f7b1d6f4f6c336c24ed38235167b9316ff5ddcfa66ca27d072c2cf4ba511f76e1b
|
||||
MISC metadata.xml 243 BLAKE2B fc4ef3433d84176432ef31abd4960ce0e2dcd4979228bf565712a1e574451b34689a8fff3dab4142e3997f084729bba1bc3d2c38d6ddf10d95a11e0b4412e03a SHA512 e3315331fae1a640778867a807694dc624ac88e4dbae2546780534a629d65d054cc6e376245fd31432d663775121cf07d74b2f1cd65d9d2d9cf9137d6598897a
|
||||
|
@ -0,0 +1,569 @@
|
||||
commit 3cbead845f607628a44d78583534e6c0a74e9af1
|
||||
Author: orbea <orbea@riseup.net>
|
||||
Date: Mon May 10 09:38:47 2021 -0700
|
||||
|
||||
Fix the build with -no-undefined.
|
||||
|
||||
This adds correct usage of LDFLAGS and LIBADD.
|
||||
|
||||
Signed-off-by: orbea <orbea@riseup.net>
|
||||
|
||||
diff --git a/builder/builder.h b/builder/builder.h
|
||||
index e92b410..fa0055a 100644
|
||||
--- a/builder/builder.h
|
||||
+++ b/builder/builder.h
|
||||
@@ -51,10 +51,6 @@ typedef struct __builder_module {
|
||||
"MAINTAINERCLEANFILES = %s*.h %s*.c %s*~\n\n" \
|
||||
"CLEANFILES = \n" \
|
||||
"\n" \
|
||||
- "if NEED_FERITE_LIB\n" \
|
||||
- "libferite = -L${top_builddir}/src -lferite\n" \
|
||||
- "endif\n\n" \
|
||||
- "LDFLAGS = $(libferite) -L${libdir} @%s_LIBS@\n" \
|
||||
"INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @%s_CFLAGS@\n" \
|
||||
"DEFS = @thread_defs@\n" \
|
||||
"\nscripts_DATA = %s\nscriptsdir = @FE_XPLAT_LIBRARY_PATH@\n\n" \
|
||||
@@ -65,7 +61,7 @@ typedef struct __builder_module {
|
||||
"\n" \
|
||||
"%s_la_SOURCES = %s %s\n" \
|
||||
"%s_la_LDFLAGS = -no-undefined -module -avoid-version\n" \
|
||||
- "%s_la_LIBADD =\n" \
|
||||
+ "%s_la_LIBADD = ${top_builddir}/src/libferite.la\n" \
|
||||
"\n" \
|
||||
"%s_core.c: %s\n" \
|
||||
"\t%s -m %s %s/%s/%s\n\n%s"
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 5b2f644..d5e713d 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -78,8 +78,6 @@ AC_DEFINE_UNQUOTED([PLATFORM], "$platform", [The Platform on which we exist])
|
||||
CFLAGS="-DHAVE_CONFIG_HEADER -L$prefix/lib $CFLAGS"
|
||||
CCFLAGS="-DHAVE_CONFIG_HEADER -L$prefix/lib $CCFLAGS"
|
||||
|
||||
-AM_CONDITIONAL(NEED_FERITE_LIB, test "$system" = "Darwin" -o "$system" = "CYGWIN" -o "$system" = "SunOS" -o "$system" = "MINGW")
|
||||
-
|
||||
AC_PROG_INSTALL
|
||||
AC_PROG_MAKE_SET
|
||||
|
||||
diff --git a/libs/aphex/src/Makefile.am b/libs/aphex/src/Makefile.am
|
||||
index 2b14cb7..57a8311 100644
|
||||
--- a/libs/aphex/src/Makefile.am
|
||||
+++ b/libs/aphex/src/Makefile.am
|
||||
@@ -6,8 +6,6 @@ AUTOMAKE_OPTIONS = no-dependencies foreign
|
||||
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
-LDFLAGS = -L${prefix}/lib
|
||||
-
|
||||
INCLUDES = -I${top_srcdir}/libs/aphex/include -I${top_srcdir}/include -I${prefix}/include -I$(includedir) @aphex_INCS@
|
||||
|
||||
|
||||
@@ -18,7 +16,7 @@ noinst_LTLIBRARIES = libaphex.la
|
||||
include_HEADERS =
|
||||
|
||||
libaphex_la_DEPENDENCIES = $(top_builddir)/config.h
|
||||
-libaphex_la_LDFLAGS = -no-undefined $(LDFLAGS) -m @aphex_LDFLAGS@
|
||||
+libaphex_la_LDFLAGS = -no-undefined -m @aphex_LDFLAGS@
|
||||
libaphex_la_LIBADD = @thread_libs@ @gc_libs@
|
||||
|
||||
libaphex_la_SOURCES = aphex_file.c aphex_directory.c aphex_config.c aphex_match.c aphex_thread.c aphex_notify.c poll.c poll.h
|
||||
diff --git a/libs/triton/src/Makefile.am b/libs/triton/src/Makefile.am
|
||||
index 0572996..0b25ba3 100644
|
||||
--- a/libs/triton/src/Makefile.am
|
||||
+++ b/libs/triton/src/Makefile.am
|
||||
@@ -6,8 +6,6 @@ AUTOMAKE_OPTIONS = no-dependencies foreign
|
||||
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
-LDFLAGS = -L/usr/local/lib
|
||||
-
|
||||
INCLUDES = -I${top_srcdir} -I${top_srcdir}/libs/triton/include -I${top_srcdir}/include -I${prefix}/include -I$(includedir) @TRITON_INCS@
|
||||
|
||||
DEFS = @debugdefs@
|
||||
@@ -23,6 +21,6 @@ CLEANFILES = libltdl.la libltdlc.la
|
||||
include_HEADERS =
|
||||
|
||||
libtriton_la_DEPENDENCIES = $(top_builddir)/config.h
|
||||
-libtriton_la_LDFLAGS = -no-undefined $(LDFLAGS) -m @TRITON_LDFLAGS@
|
||||
+libtriton_la_LDFLAGS = -no-undefined -m @TRITON_LDFLAGS@
|
||||
|
||||
libtriton_la_SOURCES = triton_core.c triton_loader_dlfcn.c triton_loader_ltdl.c triton_loader_darwin.c triton_loader_win32.c
|
||||
diff --git a/modules/array/Makefile.am b/modules/array/Makefile.am
|
||||
index 9f0475d..8bef2b8 100644
|
||||
--- a/modules/array/Makefile.am
|
||||
+++ b/modules/array/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = array*.h array*.c array*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @array_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @array_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = array.la
|
||||
|
||||
array_la_SOURCES = array_core.c array_misc.c array_Array.c array_header.h util.c util.h
|
||||
array_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-array_la_LIBADD =
|
||||
+array_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
|
||||
array_core.c: @MODULE_SRC_PREFIX@/array/array.fec
|
||||
@BUILDER@ -m array @MODULE_SRC_PREFIX@/array/array.fec
|
||||
diff --git a/modules/date/Makefile.am b/modules/date/Makefile.am
|
||||
index ab646b4..976baa0 100644
|
||||
--- a/modules/date/Makefile.am
|
||||
+++ b/modules/date/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = date*.h date*.c date*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite -L${top_builddir}/modules/stream -lferitestream
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @date_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @date_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = date.la
|
||||
|
||||
date_la_SOURCES = date_core.c date_header.h date_misc.c date_Alarm.c date_Date.c util_date.c util_date.h strptime.c
|
||||
date_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-date_la_LIBADD =
|
||||
+date_la_LIBADD = ${top_builddir}/modules/stream/libferitestream.la
|
||||
|
||||
date_core.c: @MODULE_SRC_PREFIX@/date/date.fec
|
||||
@BUILDER@ -m date @MODULE_SRC_PREFIX@/date/date.fec
|
||||
diff --git a/modules/filesystem/Makefile.am b/modules/filesystem/Makefile.am
|
||||
index ac5b5e9..227a5ab 100644
|
||||
--- a/modules/filesystem/Makefile.am
|
||||
+++ b/modules/filesystem/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = filesystem*.h filesystem*.c filesystem*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite -L${top_builddir}/modules/stream -lferitestream
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @filesystem_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @filesystem_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = filesystem.la
|
||||
|
||||
filesystem_la_SOURCES = filesystem_core.c filesystem_misc.c filesystem_FileSystem.c filesystem_Directory.c filesystem_File.c filesystem_header.h
|
||||
filesystem_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-filesystem_la_LIBADD =
|
||||
+filesystem_la_LIBADD = ${top_builddir}/modules/stream/libferitestream.la
|
||||
|
||||
filesystem_core.c: @MODULE_SRC_PREFIX@/filesystem/filesystem.fec
|
||||
@BUILDER@ -m filesystem @MODULE_SRC_PREFIX@/filesystem/filesystem.fec
|
||||
diff --git a/modules/ipc/Makefile.am b/modules/ipc/Makefile.am
|
||||
index 3367aa2..18f9593 100644
|
||||
--- a/modules/ipc/Makefile.am
|
||||
+++ b/modules/ipc/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = ipc*.h ipc*.c ipc*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @ipc_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @ipc_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = ipc.la
|
||||
|
||||
ipc_la_SOURCES = ipc_core.c ipc_misc.c ipc_IPCObject.c ipc_header.h
|
||||
ipc_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-ipc_la_LIBADD =
|
||||
+ipc_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
|
||||
ipc_core.c: @MODULE_SRC_PREFIX@/ipc/ipc.fec
|
||||
@BUILDER@ -m ipc @MODULE_SRC_PREFIX@/ipc/ipc.fec
|
||||
diff --git a/modules/math/Makefile.am b/modules/math/Makefile.am
|
||||
index 21a2ebc..f3a7f09 100644
|
||||
--- a/modules/math/Makefile.am
|
||||
+++ b/modules/math/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = math*.h math*.c math*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @math_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @math_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = math.la
|
||||
|
||||
math_la_SOURCES = math_core.c math_misc.c math_Math.c math_Math_Complex.c math_header.h
|
||||
math_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-math_la_LIBADD =
|
||||
+math_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
|
||||
math_core.c: @MODULE_SRC_PREFIX@/math/complex.fec @MODULE_SRC_PREFIX@/math/math.fec
|
||||
@BUILDER@ -m math @MODULE_SRC_PREFIX@/math/math.fec
|
||||
diff --git a/modules/network/Makefile.am b/modules/network/Makefile.am
|
||||
index 91aff1a..d753ed7 100644
|
||||
--- a/modules/network/Makefile.am
|
||||
+++ b/modules/network/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = network*.h network*.c network*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite -L${top_builddir}/modules/stream -lferitestream
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @network_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @network_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = network.la
|
||||
|
||||
network_la_SOURCES = network_core.c network_misc.c network_Network.c network_Network_TCP.c network_Network_TCP_Stream.c network_Network_Host.c network_Network_UDP.c network_Network_UDP_Stream.c network_Network_Service.c network_header.h util_network.c util_network.h
|
||||
network_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-network_la_LIBADD =
|
||||
+network_la_LIBADD = ${top_builddir}/modules/stream/libferitestream.la
|
||||
|
||||
network_core.c: @MODULE_SRC_PREFIX@/network/network.fec
|
||||
@BUILDER@ -m network @MODULE_SRC_PREFIX@/network/network.fec
|
||||
diff --git a/modules/number/Makefile.am b/modules/number/Makefile.am
|
||||
index 6a39962..1203c68 100644
|
||||
--- a/modules/number/Makefile.am
|
||||
+++ b/modules/number/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = number*.h number*.c number*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @number_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @number_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = number.la
|
||||
|
||||
number_la_SOURCES = number_core.c number_misc.c number_Number.c number_header.h
|
||||
number_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-number_la_LIBADD =
|
||||
+number_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
|
||||
number_core.c: @MODULE_SRC_PREFIX@/number/number.fec
|
||||
@BUILDER@ -m number @MODULE_SRC_PREFIX@/number/number.fec
|
||||
diff --git a/modules/posix/Makefile.am b/modules/posix/Makefile.am
|
||||
index 8c5d8e9..bfd96fa 100644
|
||||
--- a/modules/posix/Makefile.am
|
||||
+++ b/modules/posix/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = posix*.h posix*.c posix*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite -L${top_builddir}/modules/stream -lferitestream
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @posix_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @posix_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = posix.la
|
||||
|
||||
posix_la_SOURCES = posix_core.c posix_misc.c posix_Posix.c posix_Posix_Uname.c posix_Posix_Rlimit.c posix_Posix_User.c posix_Posix_Pipe.c posix_Posix_Rusage.c posix_Posix_ProcessStream.c posix_Posix_Stat.c posix_Posix_SelectResult.c posix_Posix_Group.c posix_header.h util_posix.c util_posix.h util_user.c util_user.h util_signal.c util_signal.h
|
||||
posix_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-posix_la_LIBADD =
|
||||
+posix_la_LIBADD = ${top_builddir}/modules/stream/libferitestream.la
|
||||
|
||||
posix_core.c: @MODULE_SRC_PREFIX@/posix/posix.fec @MODULE_SRC_PREFIX@/posix/posix_consts.fec
|
||||
@BUILDER@ -m posix @MODULE_SRC_PREFIX@/posix/posix.fec
|
||||
diff --git a/modules/reflection/Makefile.am b/modules/reflection/Makefile.am
|
||||
index 8d02b47..0509819 100644
|
||||
--- a/modules/reflection/Makefile.am
|
||||
+++ b/modules/reflection/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = reflection*.h reflection*.c reflection*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @reflection_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @reflection_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = reflection.la
|
||||
|
||||
reflection_la_SOURCES = reflection_core.c reflection_misc.c reflection_Reflection.c reflection_Namespace.c reflection_Function.c reflection_Class.c reflection_Variable.c reflection_Object.c reflection_header.h utility.c
|
||||
reflection_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-reflection_la_LIBADD =
|
||||
+reflection_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
|
||||
reflection_core.c: @MODULE_SRC_PREFIX@/reflection/reflection.fec
|
||||
@BUILDER@ -m reflection @MODULE_SRC_PREFIX@/reflection/reflection.fec
|
||||
diff --git a/modules/regexp/Makefile.am b/modules/regexp/Makefile.am
|
||||
index 9bf9df6..4bf74be 100644
|
||||
--- a/modules/regexp/Makefile.am
|
||||
+++ b/modules/regexp/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = regexp*.h regexp*.c regexp*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @regexp_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @regexp_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = regexp.la
|
||||
|
||||
regexp_la_SOURCES = regexp_core.c regexp_misc.c regexp_MatchObject.c regexp_Regexp.c regexp_header.h
|
||||
regexp_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-regexp_la_LIBADD =
|
||||
+regexp_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
|
||||
regexp_core.c: @MODULE_SRC_PREFIX@/regexp/regexp.fec
|
||||
@BUILDER@ -m regexp @MODULE_SRC_PREFIX@/regexp/regexp.fec
|
||||
diff --git a/modules/serialize/Makefile.am b/modules/serialize/Makefile.am
|
||||
index 0d40c38..ac58c8a 100644
|
||||
--- a/modules/serialize/Makefile.am
|
||||
+++ b/modules/serialize/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = serialize*.h serialize*.c serialize*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @serialize_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @serialize_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = serialize.la
|
||||
|
||||
serialize_la_SOURCES = serialize_core.c serialize_misc.c serialize_Serialize.c serialize_header.h utility.c utility.h
|
||||
serialize_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-serialize_la_LIBADD =
|
||||
+serialize_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
|
||||
serialize_core.c: @MODULE_SRC_PREFIX@/serialize/serialize.fec
|
||||
@BUILDER@ -m serialize @MODULE_SRC_PREFIX@/serialize/serialize.fec
|
||||
diff --git a/modules/stream/Makefile.am b/modules/stream/Makefile.am
|
||||
index 5f6adf1..1ed7e61 100644
|
||||
--- a/modules/stream/Makefile.am
|
||||
+++ b/modules/stream/Makefile.am
|
||||
@@ -7,18 +7,12 @@ MAINTAINERCLEANFILES = stream*.h stream*.c stream*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @stream_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @stream_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
lib_LTLIBRARIES = libferitestream.la
|
||||
libferitestream_la_SOURCES = util_stream.c
|
||||
-libferitestream_la_LIBADD = $(LDFLAGS)
|
||||
-libferitestream_la_DEPENDENCIES =
|
||||
+libferitestream_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
libferitestream_la_LDFLAGS = -version-info 1:0:0 -export-dynamic -no-undefined
|
||||
|
||||
fsl_DATA = util_stream.h
|
||||
@@ -36,7 +30,7 @@ pkg_LTLIBRARIES = stream.la
|
||||
|
||||
stream_la_SOURCES = stream_core.c stream_misc.c stream_Stream.c stream_Stream_Stream.c stream_Stream_StdioStream.c stream_Stream_StringStream.c stream_Stream_PointerObject.c stream_header.h util_stream.c util_stream.h
|
||||
stream_la_LDFLAGS = -no-undefined -module -avoid-version -L. -lferitestream
|
||||
-stream_la_LIBADD =
|
||||
+stream_la_LIBADD = libferitestream.la
|
||||
|
||||
stream_core.c: @MODULE_SRC_PREFIX@/stream/stream.fec
|
||||
@BUILDER@ -m stream @MODULE_SRC_PREFIX@/stream/stream.fec
|
||||
diff --git a/modules/string/Makefile.am b/modules/string/Makefile.am
|
||||
index 851d2ff..ff83887 100644
|
||||
--- a/modules/string/Makefile.am
|
||||
+++ b/modules/string/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = string*.h string*.c string*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @string_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @string_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = string.la
|
||||
|
||||
string_la_SOURCES = string_core.c string_misc.c string_String.c string_header.h
|
||||
string_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-string_la_LIBADD =
|
||||
+string_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
|
||||
string_core.c: @MODULE_SRC_PREFIX@/string/string.fec
|
||||
@BUILDER@ -m string @MODULE_SRC_PREFIX@/string/string.fec
|
||||
diff --git a/modules/sys/Makefile.am b/modules/sys/Makefile.am
|
||||
index ac60b56..01c7e8f 100644
|
||||
--- a/modules/sys/Makefile.am
|
||||
+++ b/modules/sys/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = sys*.h sys*.c sys*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite -L${top_builddir}/modules/stream -lferitestream
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @sys_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @sys_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = sys.la
|
||||
|
||||
sys_la_SOURCES = sys_core.c sys_misc.c sys_Sys.c sys_Sys_env.c sys_header.h
|
||||
sys_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-sys_la_LIBADD =
|
||||
+sys_la_LIBADD = ${top_builddir}/modules/stream/libferitestream.la
|
||||
|
||||
sys_core.c: @MODULE_SRC_PREFIX@/sys/env.fec @MODULE_SRC_PREFIX@/sys/std.fec @MODULE_SRC_PREFIX@/sys/sys.fec
|
||||
@BUILDER@ -m sys @MODULE_SRC_PREFIX@/sys/sys.fec
|
||||
diff --git a/modules/test/Makefile.am b/modules/test/Makefile.am
|
||||
index aeb7940..b99b0de 100644
|
||||
--- a/modules/test/Makefile.am
|
||||
+++ b/modules/test/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = test*.h test*.c test*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @test_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @test_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = test.la
|
||||
|
||||
test_la_SOURCES = test_core.c test_misc.c test_Test.c test_header.h utility.c utility.h
|
||||
test_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-test_la_LIBADD =
|
||||
+test_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
|
||||
test_core.c: @MODULE_SRC_PREFIX@/test/test.fec
|
||||
@BUILDER@ -m test @MODULE_SRC_PREFIX@/test/test.fec
|
||||
diff --git a/modules/thread/Makefile.am b/modules/thread/Makefile.am
|
||||
index 3d6cfb2..c5438e4 100644
|
||||
--- a/modules/thread/Makefile.am
|
||||
+++ b/modules/thread/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = thread*.h thread*.c thread*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @thread_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @thread_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = thread.la
|
||||
|
||||
thread_la_SOURCES = thread_core.c thread_misc.c thread_Thread.c thread_Mutex.c thread_Event.c thread_header.h utility.c
|
||||
thread_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-thread_la_LIBADD =
|
||||
+thread_la_LIBADD = ${top_builddir}/src/libferite.la
|
||||
|
||||
thread_core.c: @MODULE_SRC_PREFIX@/thread/thread.fec
|
||||
@BUILDER@ -m thread @MODULE_SRC_PREFIX@/thread/thread.fec
|
||||
diff --git a/modules/unix/Makefile.am b/modules/unix/Makefile.am
|
||||
index 7999784..8fea3e7 100644
|
||||
--- a/modules/unix/Makefile.am
|
||||
+++ b/modules/unix/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = unix*.h unix*.c unix*~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite -L${top_builddir}/modules/stream -lferitestream
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @unix_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @unix_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = unix.la
|
||||
|
||||
unix_la_SOURCES = unix_core.c unix_misc.c unix_Unix.c unix_Unix_SyslogStream.c unix_Network.c unix_Network_Unix.c unix_Network_Unix_Stream.c unix_header.h
|
||||
unix_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-unix_la_LIBADD =
|
||||
+unix_la_LIBADD = ${top_builddir}/modules/stream/libferitestream.la
|
||||
|
||||
unix_core.c: @MODULE_SRC_PREFIX@/unix/unix.fec @MODULE_SRC_PREFIX@/unix/syslog.fec @MODULE_SRC_PREFIX@/unix/unixsocket.fec
|
||||
@BUILDER@ -m unix @MODULE_SRC_PREFIX@/unix/unix.fec
|
||||
diff --git a/modules/xml/Makefile.am b/modules/xml/Makefile.am
|
||||
index 71a88a9..26c7cbb 100644
|
||||
--- a/modules/xml/Makefile.am
|
||||
+++ b/modules/xml/Makefile.am
|
||||
@@ -7,11 +7,6 @@ MAINTAINERCLEANFILES = xml*.h xml*.c xml*~~
|
||||
|
||||
CLEANFILES =
|
||||
|
||||
-if NEED_FERITE_LIB
|
||||
-libferite = -L${top_builddir}/src -lferite
|
||||
-endif
|
||||
-
|
||||
-LDFLAGS = $(libferite) -L${libdir} @xml_LIBS@
|
||||
INCLUDES = -I$(top_srcdir)/include -I$(prefix)/include -I. @xml_CFLAGS@
|
||||
DEFS = @thread_defs@
|
||||
|
||||
@@ -27,7 +22,7 @@ pkg_LTLIBRARIES = xml.la
|
||||
|
||||
xml_la_SOURCES = xml_core.c xml_misc.c xml_XML.c xml_XML_SAXParser.c xml_XML_TreeParser.c xml_header.h sax_handlers.c sax_handlers.h tree_handlers.c tree_handlers.h xpath_handlers.c xpath_handlers.h xml_XML_Element.c
|
||||
xml_la_LDFLAGS = -no-undefined -module -avoid-version
|
||||
-xml_la_LIBADD =
|
||||
+xml_la_LIBADD = ${top_builddir}/src/libferite.la @xml_LIBS@
|
||||
|
||||
xml_core.c: @MODULE_SRC_PREFIX@/xml/xml.fec
|
||||
@BUILDER@ -m xml @MODULE_SRC_PREFIX@/xml/xml.fec
|
||||
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||
index 01c8649..fa2e41e 100644
|
||||
--- a/src/Makefile.am
|
||||
+++ b/src/Makefile.am
|
||||
@@ -8,8 +8,6 @@ MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
CLEANFILES = *~
|
||||
|
||||
-LDFLAGS = -L${prefix}/lib -lm
|
||||
-
|
||||
INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/libs/aphex/include -I$(top_srcdir)/libs/triton/include -I${top_srcdir}/include -I${prefix}/include -I$(includedir) -I${top_srcdir}/include/ferite/ @pcre_cflags@
|
||||
|
||||
DEFS = @debugdefs@ @thread_defs@ @gc_defs@
|
||||
@@ -69,6 +67,6 @@ EXTRA_DIST = ferite_parser.y ferite_scanner.l
|
||||
|
||||
libferite_la_LIBADD = $(top_builddir)/libs/triton/src/libtriton.la \
|
||||
$(top_builddir)/libs/aphex/src/libaphex.la \
|
||||
- -lm @pcre_libs@ @thread_libs@ @gc_libs@ $(LDFLAGS)
|
||||
+ -lm @pcre_libs@ @thread_libs@ @gc_libs@
|
||||
libferite_la_DEPENDENCIES = $(top_builddir)/config.h $(top_builddir)/libs/triton/src/libtriton.la $(top_builddir)/libs/aphex/src/libaphex.la
|
||||
libferite_la_LDFLAGS = -version-info 1:1:0 -export-dynamic -no-undefined
|
@ -0,0 +1,41 @@
|
||||
--- a/gcc-9-2020-20200429-19AA7-src/gcc/ada/osint.adb 2017-03-10 21:58:02.600710156 +0100
|
||||
+++ b/gcc-9-2020-20200429-19AA7-src/gcc/ada/osint.adb 2017-03-10 21:59:38.033983293 +0100
|
||||
@@ -2229,14 +2229,11 @@
|
||||
for J in Start_Of_Prefix .. Name_Len - Prog'Length + 1 loop
|
||||
if Name_Buffer (J .. J + Prog'Length - 1) = Prog then
|
||||
End_Of_Prefix := J - 1;
|
||||
+ Start_Of_Suffix := J + Prog'Length;
|
||||
exit;
|
||||
end if;
|
||||
end loop;
|
||||
|
||||
- if End_Of_Prefix > 1 then
|
||||
- Start_Of_Suffix := End_Of_Prefix + Prog'Length + 1;
|
||||
- end if;
|
||||
-
|
||||
-- Create the new program name
|
||||
|
||||
return new String'
|
||||
--- a/patch/04_all_nossp-on-nostdlib.patch 2021-05-10 21:37:05.733985417 +0200
|
||||
+++ b/patch/04_all_nossp-on-nostdlib.patch 2021-05-10 21:38:02.925029050 +0200
|
||||
@@ -4,7 +4,7 @@
|
||||
--- a/gcc/gcc.c 2017-07-04 09:15:57.740793000 +0200
|
||||
+++ b/gcc/gcc.c 2018-03-02 13:58:44.387741114 +0100
|
||||
@@ -857,6 +857,12 @@ proper position among the other output f
|
||||
- #define LINK_GCC_C_SEQUENCE_SPEC "%G %L %G"
|
||||
+ #define LINK_GCC_C_SEQUENCE_SPEC "%G %{!nolibc:%L %G}"
|
||||
#endif
|
||||
|
||||
+#ifdef ENABLE_DEFAULT_SSP
|
||||
@@ -19,9 +19,9 @@
|
||||
@@ -1131,7 +1148,7 @@ static const char *cc1_options =
|
||||
%{-version:--version}\
|
||||
%{-help=*:--help=%*}\
|
||||
- %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
|
||||
+ %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %w%b.s}}}\
|
||||
- %{fsyntax-only:-o %j} %{-param*}\
|
||||
+ %{fsyntax-only:-o %j} %{-param*} " NO_SSP_SPEC "\
|
||||
%{coverage:-fprofile-arcs -ftest-coverage}\
|
||||
+ %{fdump-scos:-fpreserve-decisions-generic}\
|
||||
%{fprofile-arcs|fprofile-generate*|coverage:\
|
||||
- %{!fprofile-update=singel:\
|
@ -0,0 +1,140 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PATCH_GCC_VER=9.3.0
|
||||
PATCH_VER="4"
|
||||
|
||||
TOOLCHAIN_GCC_PV=9.3.1
|
||||
|
||||
REL=9
|
||||
MYP=gcc-${REL}-${PV}-20200429-19AA7-src
|
||||
GNATDIR=gnat-${PV}-20200429-19B04-src
|
||||
INTFDIR=gcc-interface-${REL}-${PV}-20200429-19B10-src
|
||||
BTSTRP_X86=gnat-gpl-2014-x86-linux-bin
|
||||
BTSTRP_AMD64=gnat-gpl-2014-x86_64-linux-bin
|
||||
|
||||
# we provide own tarball below
|
||||
GCC_TARBALL_SRC_URI="
|
||||
https://community.download.adacore.com/v1/649a561ec6de9e476c54b02715b79f7503600ce5?filename=${GNATDIR}.tar.gz
|
||||
-> ${GNATDIR}.tar.gz
|
||||
https://community.download.adacore.com/v1/e6b6a3e318e13248456bd37b758435e602b367da?filename=${MYP}.tar.gz
|
||||
-> ${MYP}.tar.gz
|
||||
https://community.download.adacore.com/v1/c7a97636b31f3575df85f1eb0965462a353630dd?filename=${INTFDIR}.tar.gz
|
||||
-> ${INTFDIR}.tar.gz
|
||||
bootstrap? (
|
||||
amd64? (
|
||||
http://mirrors.cdn.adacore.com/art/564b3ebec8e196b040fbe66c ->
|
||||
${BTSTRP_AMD64}.tar.gz
|
||||
)
|
||||
x86? (
|
||||
http://mirrors.cdn.adacore.com/art/564b3e9dc8e196b040fbe248 ->
|
||||
${BTSTRP_X86}.tar.gz
|
||||
)
|
||||
)"
|
||||
|
||||
inherit toolchain-funcs toolchain
|
||||
|
||||
DESCRIPTION="GNAT Ada Compiler - GPL version"
|
||||
HOMEPAGE="http://libre.adacore.com/"
|
||||
|
||||
LICENSE+=" GPL-2 GPL-3"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+ada +bootstrap"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="!sys-devel/gcc:${TOOLCHAIN_GCC_PV}"
|
||||
DEPEND="${RDEPEND}
|
||||
elibc_glibc? ( >=sys-libs/glibc-2.13 )
|
||||
>=sys-devel/binutils-2.20"
|
||||
|
||||
S="${WORKDIR}"/${MYP}
|
||||
PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.13 )"
|
||||
|
||||
pkg_setup() {
|
||||
toolchain_pkg_setup
|
||||
|
||||
if use amd64; then
|
||||
BTSTRP=${BTSTRP_AMD64}
|
||||
else
|
||||
BTSTRP=${BTSTRP_X86}
|
||||
fi
|
||||
|
||||
if use bootstrap; then
|
||||
GCC="${WORKDIR}"/${BTSTRP}/bin/gcc
|
||||
else
|
||||
GCC=${ADA:-$(tc-getCC)}
|
||||
fi
|
||||
|
||||
gnatbase=$(basename ${GCC})
|
||||
gnatpath=$(dirname ${GCC})
|
||||
|
||||
GNATMAKE=${gnatbase/gcc/gnatmake}
|
||||
if [[ ${gnatpath} != "." ]] ; then
|
||||
GNATMAKE="${gnatpath}/${GNATMAKE}"
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if ! use bootstrap && [[ -z "$(type ${GNATMAKE} 2>/dev/null)" ]] ; then
|
||||
eerror "You need a gcc compiler that provides the Ada Compiler:"
|
||||
eerror "1) use gcc-config to select the right compiler or"
|
||||
eerror "2) set the bootstrap use flag"
|
||||
die "ada compiler not available"
|
||||
fi
|
||||
|
||||
toolchain_src_unpack
|
||||
if use bootstrap; then
|
||||
rm ${BTSTRP}/libexec/gcc/*/4.7.4/ld || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
CC=${GCC}
|
||||
CXX="${gnatbase/gcc/g++}"
|
||||
GNATBIND="${gnatbase/gcc/gnatbind}"
|
||||
GNATLINK="${gnatbase/gcc/gnatlink}"
|
||||
GNATLS="${gnatbase/gcc/gnatls}"
|
||||
if [[ ${gnatpath} != "." ]] ; then
|
||||
CXX="${gnatpath}/${CXX}"
|
||||
GNATBIND="${gnatpath}/${GNATBIND}"
|
||||
GNATLINK="${gnatpath}/${GNATLINK}"
|
||||
GNATLS="${gnatpath}/${GNATLS}"
|
||||
fi
|
||||
mkdir bin || die
|
||||
ln -s $(which ${GCC}) bin/gcc || die
|
||||
ln -s $(which ${CXX}) bin/g++ || die
|
||||
ln -s $(which ${GNATMAKE}) bin/gnatmake || die
|
||||
ln -s $(which ${GNATBIND}) bin/gnatbind || die
|
||||
ln -s $(which ${GNATLINK}) bin/gnatlink || die
|
||||
ln -s $(which ${GNATLS}) bin/gnatls || die
|
||||
|
||||
cd ..
|
||||
mv ${GNATDIR}/src/ada ${MYP}/gcc/ || die
|
||||
mv ${INTFDIR} ${MYP}/gcc/ada/gcc-interface || die
|
||||
eapply "${FILESDIR}"/${P}-gentoo.patch
|
||||
rm patch/32*.patch || die
|
||||
cd -
|
||||
sed -i \
|
||||
-e 's:$(P) ::g' \
|
||||
gcc/ada/gcc-interface/Makefile.in \
|
||||
|| die "sed failed"
|
||||
toolchain_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
export PATH=${PWD}/bin:${PATH}
|
||||
downgrade_arch_flags "$(gcc-version)"
|
||||
toolchain_src_configure
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
toolchain_pkg_postinst
|
||||
einfo "This provide the GNAT compiler with gcc for ada/c/c++ and more"
|
||||
einfo "The compiler binary is ${CTARGET}-gcc-${TOOLCHAIN_GCC_PV}"
|
||||
einfo "Even if the c/c++ compilers are using almost the same patched"
|
||||
einfo "source as the sys-devel/gcc package its use is not extensively"
|
||||
einfo "tested, and not supported for updating your system, except for ada"
|
||||
einfo "related packages"
|
||||
}
|
Binary file not shown.
@ -1,4 +1,4 @@
|
||||
AUX efl-1.25.1-libavif-fix.patch 2477 BLAKE2B 36ad24c7ba88a34e4da0d69cfda74b3a7a890dc639d966403511373a182cf908229a15e6c3302c3635a8ac134399a71823d2dc65320f4304078c674da7978911 SHA512 7293fbccc394f09887398940996d44f59170fc556662f095bdcead752be84b7583411af8303e462703272b00523a8e14407d14c4f0e1589ba395b592b7c29f01
|
||||
DIST efl-1.25.1.tar.xz 72306872 BLAKE2B 060d729380ba62677307c5346da1786e879c14c4e40f0a3288c8cb81ece08f4ac501d989495b1c3dcbfeb19a86d23130892ae874861de5684c867aef60cb07d6 SHA512 cd281c2299aa6f74f0204e59a13dc254135e6dc40641e0a437c6f5025efe517d415f0915f69e123123319a9bbddb748aec1948ed0b5eb386e028cf45b244bed8
|
||||
EBUILD efl-1.25.1-r11.ebuild 8230 BLAKE2B 6e501742e15483337c93b8771075dcab080661b960aa46a8ffac4c3e03419af5e0c4a2e16e9f41ffd8e29d07354f69c1bd197bff2fcbfedc388bf7c445f08ce7 SHA512 c6445103ec5e443092b4f97b519d7728bda8015ef0f18b1c435609b890638ba967289f0e62fb61604774a7cdb5161ffffce7c81bcec1823e50df2063e7f29036
|
||||
EBUILD efl-1.25.1-r11.ebuild 8230 BLAKE2B a3cd86b3802d1d6ae29246702551ab953a364aa921596449b36c414b2187b515dc3e1ddf8c79ace78158ee21bbfb63008d79eafb899b0f56810b538cdb203c26 SHA512 a0da02c6c5c7d4a9ae33757f877c8c264fbb266c45b0daebaf7fd05fe8f68584b27ec8287af265d2218acaa336cef53849e1f233b63db5a8c8a6ffbe9c40d300
|
||||
MISC metadata.xml 1888 BLAKE2B 4c689687387fb09a2387587bc32e5cb4f09b94264fb1b594d8dc0c1c214eaeb6cf5f39110ea3dde72acdcf328da25bfcd2756dc85c8b060ad64aa321b8dc8a23 SHA512 40289f8c6e10786c8c9d5069b775c7db5695910a33593e706d3ed0f623bdb8b6149161a25ad55deedd479fbc214dac174d6b99151e5167272fa464f5115eece1
|
||||
|
@ -0,0 +1,86 @@
|
||||
# Copyright 2003-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit flag-o-matic multilib-minimal
|
||||
|
||||
DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)"
|
||||
HOMEPAGE="http://elfutils.org/"
|
||||
SRC_URI="https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="bzip2 lzma nls static-libs test +threads +utils valgrind zstd"
|
||||
|
||||
RDEPEND=">=sys-libs/zlib-1.2.8-r1[static-libs?,${MULTILIB_USEDEP}]
|
||||
bzip2? ( >=app-arch/bzip2-1.0.6-r4[static-libs?,${MULTILIB_USEDEP}] )
|
||||
lzma? ( >=app-arch/xz-utils-5.0.5-r1[static-libs?,${MULTILIB_USEDEP}] )
|
||||
zstd? ( app-arch/zstd:=[static-libs?,${MULTILIB_USEDEP}] )
|
||||
!dev-libs/libelf
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
valgrind? ( dev-util/valgrind )
|
||||
"
|
||||
BDEPEND="nls? ( sys-devel/gettext )
|
||||
>=sys-devel/flex-2.5.4a
|
||||
sys-devel/m4
|
||||
"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.175-disable-biarch-test-PR24158.patch
|
||||
"${FILESDIR}"/${PN}-0.177-disable-large.patch
|
||||
"${FILESDIR}"/${PN}-0.180-PaX-support.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if ! use static-libs; then
|
||||
sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die
|
||||
fi
|
||||
# https://sourceware.org/PR23914
|
||||
sed -i 's:-Werror::' */Makefile.in || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use test && append-flags -g #407135
|
||||
|
||||
# Symbol aliases are implemented as asm statements.
|
||||
# Will require porting: https://gcc.gnu.org/PR48200
|
||||
filter-flags '-flto*'
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
ECONF_SOURCE="${S}" econf \
|
||||
$(use_enable nls) \
|
||||
$(use_enable threads thread-safety) \
|
||||
$(use_enable valgrind) \
|
||||
--disable-debuginfod \
|
||||
--disable-libdebuginfod \
|
||||
--program-prefix="eu-" \
|
||||
--with-zlib \
|
||||
$(use_with bzip2 bzlib) \
|
||||
$(use_with lzma) \
|
||||
$(use_with zstd)
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
env LD_LIBRARY_PATH="${BUILD_DIR}/libelf:${BUILD_DIR}/libebl:${BUILD_DIR}/libdw:${BUILD_DIR}/libasm" \
|
||||
LC_ALL="C" \
|
||||
emake check VERBOSE=1
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
dodoc NOTES
|
||||
# These build quick, and are needed for most tests, so don't
|
||||
# disable their building when the USE flag is disabled.
|
||||
if ! use utils; then
|
||||
rm -rf "${ED}"/usr/bin || die
|
||||
fi
|
||||
}
|
@ -0,0 +1,288 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
|
||||
inherit flag-o-matic gnome.org gnome2-utils linux-info meson multilib multilib-minimal python-any-r1 toolchain-funcs xdg
|
||||
|
||||
DESCRIPTION="The GLib library of C routines"
|
||||
HOMEPAGE="https://www.gtk.org/"
|
||||
|
||||
LICENSE="LGPL-2.1+"
|
||||
SLOT="2"
|
||||
IUSE="dbus debug +elf elibc_glibc fam gtk-doc kernel_linux +mime selinux static-libs sysprof systemtap test utils xattr"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
# * elfutils (via libelf) does not build on Windows. gresources are not embedded
|
||||
# within ELF binaries on that platform anyway and inspecting ELF binaries from
|
||||
# other platforms is not that useful so exclude the dependency in this case.
|
||||
# * Technically static-libs is needed on zlib, util-linux and perhaps more, but
|
||||
# these are used by GIO, which glib[static-libs] consumers don't really seem
|
||||
# to need at all, thus not imposing the deps for now and once some consumers
|
||||
# are actually found to static link libgio-2.0.a, we can revisit and either add
|
||||
# them or just put the (build) deps in that rare consumer instead of recursive
|
||||
# RDEPEND here (due to lack of recursive DEPEND).
|
||||
RDEPEND="
|
||||
!<dev-util/gdbus-codegen-${PV}
|
||||
>=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
|
||||
>=dev-libs/libpcre-8.31:3[${MULTILIB_USEDEP},static-libs?]
|
||||
>=dev-libs/libffi-3.0.13-r1:=[${MULTILIB_USEDEP}]
|
||||
>=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
|
||||
>=virtual/libintl-0-r2[${MULTILIB_USEDEP}]
|
||||
kernel_linux? ( >=sys-apps/util-linux-2.23[${MULTILIB_USEDEP}] )
|
||||
selinux? ( >=sys-libs/libselinux-2.2.2-r5[${MULTILIB_USEDEP}] )
|
||||
xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] ) )
|
||||
!kernel_Winnt? ( virtual/libelf:0= )
|
||||
fam? ( >=virtual/fam-0-r1[${MULTILIB_USEDEP}] )
|
||||
sysprof? ( >=dev-util/sysprof-capture-3.38:4[${MULTILIB_USEDEP}] )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
# libxml2 used for optional tests that get automatically skipped
|
||||
BDEPEND="
|
||||
app-text/docbook-xsl-stylesheets
|
||||
dev-libs/libxslt
|
||||
>=sys-devel/gettext-0.19.8
|
||||
gtk-doc? ( >=dev-util/gtk-doc-1.33
|
||||
app-text/docbook-xml-dtd:4.2
|
||||
app-text/docbook-xml-dtd:4.5 )
|
||||
systemtap? ( >=dev-util/systemtap-1.3 )
|
||||
${PYTHON_DEPS}
|
||||
test? ( >=sys-apps/dbus-1.2.14 )
|
||||
virtual/pkgconfig
|
||||
"
|
||||
# TODO: >=dev-util/gdbus-codegen-${PV} test dep once we modify gio/tests/meson.build to use external gdbus-codegen
|
||||
|
||||
PDEPEND="
|
||||
dbus? ( gnome-base/dconf )
|
||||
mime? ( x11-misc/shared-mime-info )
|
||||
"
|
||||
# shared-mime-info needed for gio/xdgmime, bug #409481
|
||||
# dconf is needed to be able to save settings, bug #498436
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/gio-querymodules$(get_exeext)
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.64.1-mark-gdbus-server-auth-test-flaky.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
if use kernel_linux ; then
|
||||
CONFIG_CHECK="~INOTIFY_USER"
|
||||
if use test ; then
|
||||
CONFIG_CHECK="~IPV6"
|
||||
WARNING_IPV6="Your kernel needs IPV6 support for running some tests, skipping them."
|
||||
fi
|
||||
linux-info_pkg_setup
|
||||
fi
|
||||
python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if use test; then
|
||||
# TODO: Review the test exclusions, especially now with meson
|
||||
# Disable tests requiring dev-util/desktop-file-utils when not installed, bug #286629, upstream bug #629163
|
||||
if ! has_version dev-util/desktop-file-utils ; then
|
||||
ewarn "Some tests will be skipped due dev-util/desktop-file-utils not being present on your system,"
|
||||
ewarn "think on installing it to get these tests run."
|
||||
sed -i -e "/appinfo\/associations/d" gio/tests/appinfo.c || die
|
||||
sed -i -e "/g_test_add_func/d" gio/tests/desktop-app-info.c || die
|
||||
fi
|
||||
|
||||
# gdesktopappinfo requires existing terminal (gnome-terminal or any
|
||||
# other), falling back to xterm if one doesn't exist
|
||||
#if ! has_version x11-terms/xterm && ! has_version x11-terms/gnome-terminal ; then
|
||||
# ewarn "Some tests will be skipped due to missing terminal program"
|
||||
# These tests seem to sometimes fail even with a terminal; skip for now and reevulate with meson
|
||||
# Also try https://gitlab.gnome.org/GNOME/glib/issues/1601 once ready for backport (or in a bump) and file new issue if still fails
|
||||
sed -i -e "/appinfo\/launch/d" gio/tests/appinfo.c || die
|
||||
# desktop-app-info/launch* might fail similarly
|
||||
sed -i -e "/desktop-app-info\/launch-as-manager/d" gio/tests/desktop-app-info.c || die
|
||||
#fi
|
||||
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=722604
|
||||
sed -i -e "/timer\/stop/d" glib/tests/timer.c || die
|
||||
sed -i -e "/timer\/basic/d" glib/tests/timer.c || die
|
||||
|
||||
ewarn "Tests for search-utils have been skipped"
|
||||
sed -i -e "/search-utils/d" glib/tests/meson.build || die
|
||||
|
||||
# Play nice with network-sandbox, but this approach would defeat the purpose of the test
|
||||
#sed -i -e "s/localhost/127.0.0.1/g" gio/tests/gsocketclient-slow.c || die
|
||||
else
|
||||
# Don't build tests, also prevents extra deps, bug #512022
|
||||
sed -i -e '/subdir.*tests/d' {.,gio,glib}/meson.build || die
|
||||
fi
|
||||
|
||||
# Don't build fuzzing binaries - not used
|
||||
sed -i -e '/subdir.*fuzzing/d' meson.build || die
|
||||
|
||||
# gdbus-codegen is a separate package
|
||||
sed -i -e '/install_dir/d' gio/gdbus-2.0/codegen/meson.build || die
|
||||
|
||||
# Same kind of meson-0.50 issue with some installed-tests files; will likely be fixed upstream soon
|
||||
sed -i -e '/install_dir/d' gio/tests/meson.build || die
|
||||
|
||||
cat > "${T}/glib-test-ld-wrapper" <<-EOF
|
||||
#!/usr/bin/env sh
|
||||
exec \${LD:-ld} "\$@"
|
||||
EOF
|
||||
chmod a+x "${T}/glib-test-ld-wrapper" || die
|
||||
sed -i -e "s|'ld'|'${T}/glib-test-ld-wrapper'|g" gio/tests/meson.build || die
|
||||
|
||||
xdg_src_prepare
|
||||
gnome2_environment_reset
|
||||
# TODO: python_name sedding for correct python shebang? Might be relevant mainly for glib-utils only
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if use debug; then
|
||||
append-cflags -DG_ENABLE_DEBUG
|
||||
else
|
||||
append-cflags -DG_DISABLE_CAST_CHECKS # https://gitlab.gnome.org/GNOME/glib/issues/1833
|
||||
fi
|
||||
|
||||
# TODO: figure a way to pass appropriate values for all cross properties that glib uses (search for get_cross_property)
|
||||
#if tc-is-cross-compiler ; then
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=756473
|
||||
# TODO-meson: This should be in meson cross file as 'growing_stack' property; and more, look at get_cross_property
|
||||
#case ${CHOST} in
|
||||
#hppa*|metag*) export glib_cv_stack_grows=yes ;;
|
||||
#*) export glib_cv_stack_grows=no ;;
|
||||
#esac
|
||||
#fi
|
||||
|
||||
local emesonargs=(
|
||||
-Ddefault_library=$(usex static-libs both shared)
|
||||
$(meson_feature selinux)
|
||||
$(meson_use xattr)
|
||||
-Dlibmount=enabled # only used if host_system == 'linux'
|
||||
-Dinternal_pcre=false
|
||||
-Dman=true
|
||||
$(meson_use systemtap dtrace)
|
||||
$(meson_use systemtap)
|
||||
$(meson_feature sysprof)
|
||||
-Dgtk_doc=$(multilib_native_usex gtk-doc true false)
|
||||
$(meson_use fam)
|
||||
$(meson_use test tests)
|
||||
-Dinstalled_tests=false
|
||||
-Dnls=enabled
|
||||
-Doss_fuzz=disabled
|
||||
-Dlibelf=$(multilib_native_usex elf enabled disabled)
|
||||
)
|
||||
meson_src_configure
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
meson_src_compile
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
export XDG_CONFIG_DIRS=/etc/xdg
|
||||
export XDG_DATA_DIRS=/usr/local/share:/usr/share
|
||||
export G_DBUS_COOKIE_SHA1_KEYRING_DIR="${T}/temp"
|
||||
export LC_TIME=C # bug #411967
|
||||
unset GSETTINGS_BACKEND # bug #596380
|
||||
python_setup
|
||||
|
||||
# Related test is a bit nitpicking
|
||||
mkdir "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
|
||||
chmod 0700 "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
|
||||
|
||||
meson_src_test --timeout-multiplier 2 --no-suite flaky
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
meson_src_install
|
||||
keepdir /usr/$(get_libdir)/gio/modules
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
# These are installed by dev-util/glib-utils
|
||||
# TODO: With patching we might be able to get rid of the python-any deps and removals, and test depend on glib-utils instead; revisit now with meson
|
||||
rm "${ED}/usr/bin/glib-genmarshal" || die
|
||||
rm "${ED}/usr/share/man/man1/glib-genmarshal.1" || die
|
||||
rm "${ED}/usr/bin/glib-mkenums" || die
|
||||
rm "${ED}/usr/share/man/man1/glib-mkenums.1" || die
|
||||
rm "${ED}/usr/bin/gtester-report" || die
|
||||
rm "${ED}/usr/share/man/man1/gtester-report.1" || die
|
||||
# gdbus-codegen manpage installed by dev-util/gdbus-codegen
|
||||
rm "${ED}/usr/share/man/man1/gdbus-codegen.1" || die
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
xdg_pkg_preinst
|
||||
|
||||
# Make gschemas.compiled belong to glib alone
|
||||
local cache="/usr/share/glib-2.0/schemas/gschemas.compiled"
|
||||
|
||||
if [[ -e ${EROOT}${cache} ]]; then
|
||||
cp "${EROOT}"${cache} "${ED}"/${cache} || die
|
||||
else
|
||||
touch "${ED}"${cache} || die
|
||||
fi
|
||||
|
||||
multilib_pkg_preinst() {
|
||||
# Make giomodule.cache belong to glib alone
|
||||
local cache="/usr/$(get_libdir)/gio/modules/giomodule.cache"
|
||||
|
||||
if [[ -e ${EROOT}${cache} ]]; then
|
||||
cp "${EROOT}"${cache} "${ED}"${cache} || die
|
||||
else
|
||||
touch "${ED}"${cache} || die
|
||||
fi
|
||||
}
|
||||
|
||||
# Don't run the cache ownership when cross-compiling, as it would end up with an empty cache
|
||||
# file due to inability to create it and GIO might not look at any of the modules there
|
||||
if ! tc-is-cross-compiler ; then
|
||||
multilib_foreach_abi multilib_pkg_preinst
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
# glib installs no schemas itself, but we force update for fresh install in case
|
||||
# something has dropped in a schemas file without direct glib dep; and for upgrades
|
||||
# in case the compiled schema format could have changed
|
||||
gnome2_schemas_update
|
||||
|
||||
multilib_pkg_postinst() {
|
||||
gnome2_giomodule_cache_update \
|
||||
|| die "Update GIO modules cache failed (for ${ABI})"
|
||||
}
|
||||
if ! tc-is-cross-compiler ; then
|
||||
multilib_foreach_abi multilib_pkg_postinst
|
||||
else
|
||||
ewarn "Updating of GIO modules cache skipped due to cross-compilation."
|
||||
ewarn "You might want to run gio-querymodules manually on the target for"
|
||||
ewarn "your final image for performance reasons and re-run it when packages"
|
||||
ewarn "installing GIO modules get upgraded or added to the image."
|
||||
fi
|
||||
|
||||
for v in ${REPLACING_VERSIONS}; do
|
||||
if ver_test "$v" "-lt" "2.63.6"; then
|
||||
ewarn "glib no longer installs the gio-launch-desktop binary. You may need"
|
||||
ewarn "to restart your session for \"Open With\" dialogs to work."
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_pkg_postrm
|
||||
gnome2_schemas_update
|
||||
|
||||
if [[ -z ${REPLACED_BY_VERSION} ]]; then
|
||||
multilib_pkg_postrm() {
|
||||
rm -f "${EROOT}"/usr/$(get_libdir)/gio/modules/giomodule.cache
|
||||
}
|
||||
multilib_foreach_abi multilib_pkg_postrm
|
||||
rm -f "${EROOT}"/usr/share/glib-2.0/schemas/gschemas.compiled
|
||||
fi
|
||||
}
|
@ -0,0 +1,97 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..10} )
|
||||
|
||||
inherit python-any-r1 toolchain-funcs
|
||||
|
||||
DESCRIPTION="Apache Kafka C/C++ client library"
|
||||
HOMEPAGE="https://github.com/edenhill/librdkafka"
|
||||
|
||||
if [[ ${PV} == "9999" ]]; then
|
||||
EGIT_REPO_URI="https://github.com/edenhill/${PN}.git"
|
||||
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/edenhill/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="BSD-2"
|
||||
|
||||
# subslot = soname version
|
||||
SLOT="0/1"
|
||||
|
||||
IUSE="lz4 sasl ssl static-libs zstd"
|
||||
|
||||
LIB_DEPEND="
|
||||
lz4? ( app-arch/lz4:=[static-libs(+)] )
|
||||
sasl? ( dev-libs/cyrus-sasl:=[static-libs(+)] )
|
||||
ssl? ( dev-libs/openssl:0=[static-libs(+)] )
|
||||
zstd? ( app-arch/zstd:=[static-libs(+)] )
|
||||
sys-libs/zlib:=[static-libs(+)]
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
RDEPEND="!static-libs? ( ${LIB_DEPEND//\[static-libs(+)]} )"
|
||||
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
static-libs? ( ${LIB_DEPEND} )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if [[ ${PV} != "9999" ]]; then
|
||||
sed -i \
|
||||
-e "s/^\(export RDKAFKA_GITVER=\).*/\1\"${PV}@release\"/" \
|
||||
tests/run-test.sh || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export AR CC CXX LD NM OBJDUMP PKG_CONFIG STRIP
|
||||
|
||||
local myeconf=(
|
||||
--no-cache
|
||||
--no-download
|
||||
--disable-debug-symbols
|
||||
$(use_enable lz4)
|
||||
$(use_enable sasl)
|
||||
$(usex static-libs '--enable-static' '')
|
||||
$(use_enable ssl)
|
||||
$(use_enable zstd)
|
||||
)
|
||||
|
||||
econf ${myeconf[@]}
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Simulate CI so we do not fail when tests are running longer than expected,
|
||||
# https://github.com/edenhill/librdkafka/blob/v1.6.1/tests/0062-stats_event.c#L101-L116
|
||||
local -x CI=true
|
||||
|
||||
emake -C tests run_local
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake -j1 \
|
||||
DESTDIR="${D}" \
|
||||
docdir="/usr/share/doc/${PF}" \
|
||||
install
|
||||
|
||||
if ! use static-libs; then
|
||||
find "${ED}" -type f \( -name "*.a" -o -name "*.la" \) -delete || die
|
||||
fi
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
AUX libusb-0.1-ansi.patch 4390 BLAKE2B c64a22623907ee5432d7f636642214221840df3721f226fedbe97da998e3503f9b6eb808e99a58f115f4bc1ac04a75b55928abd30786b9a6b5e3baa4b0f1edd9 SHA512 a3745567934bb8551b1fb0c7e43d5f749334ac763b05a23e15fb77af85034ca76fa6c65121c83cbfc44d82d6a879a43249148b1b894425956deb8eed3cf39e95
|
||||
DIST libusb-compat-0.1.5.tar.bz2 276769 BLAKE2B 66fa89c507d0454a587fa84d2ee2c34428963fa1770b44038fa45063466611ae263a3c790a167e5049393ef4d87073d1b16135d63cd0666256c3430bf36dae49 SHA512 fe63bd1c65e67588a83ebfdd329025ecf75f33f877fb80dd83eb528df057efb591e010416027f9054294504562299166e8e2811a7681fa1967a03baae9b88857
|
||||
EBUILD libusb-compat-0.1.5-r2.ebuild 1119 BLAKE2B cac1767551107388bcaec8f195c2f27004b4f3595b6f3a5c26cca94408d0277e49135376b6fd47d299b0a527cccd635aa365c6fb9752895f0188e1cae5d33e2d SHA512 1a289d196dcbaa89e071c853d46d2835211bc9d998112b6a1c4a6cc7a84451b84f5d61109c0ff0826e6621e84bc2e3913306799396dbe0f1522793a23b9abd76
|
||||
EBUILD libusb-compat-0.1.5-r3.ebuild 1170 BLAKE2B f6626fdd234c7a603c37a8665c11f7215de1bda0919aa61a313eb3c8f8e3c7cbcd92d5d94e570af85566efd5d41e52b98fdc45efb62851426f3ea2d087d0b787 SHA512 ae57eb7ccd9b8874afc59f3b3f18bcba8548081793ebbbbc301844f86629a67998bc8f89bf541b39dec2f948c625244d6e22ffa6a70337b3ba5c65db6ee210ac
|
||||
EBUILD libusb-compat-0.1.5-r3.ebuild 1169 BLAKE2B 9091b1e63697a377fc9034d42c206f8a5d9f3959cbd5b5cdec3ada74c5be3c4141f1b68aa7f35d2bfaea84dbeb688b4ac2b7461618a77f1bc30e28267277a3a3 SHA512 73ec3df96ecb5192c276dab63b1a76cf13d8dfd0355b1a2c3eca3e45a49de4900ccaf5202cb7c4c4f23487f2d3bb579f8624f0dc746bae69b1b820b71c641653
|
||||
MISC metadata.xml 333 BLAKE2B ee2452df6eb77285ba7e918f882c543d413656aaf0a199ac369ef60d25b8790fa37e320101f9645d5042ed04826e00922d5d38752b31492deda2cc78e7c41b49 SHA512 10f5333485c01d415c73f195e22785a9584d9dcf9662317605d9c6f14507863be5769457d2080137d31ad79fd0e825b9f02ec4160c40a5347591726843148705
|
||||
|
@ -1,5 +1,5 @@
|
||||
AUX libvoikko-4.3-disable-wall-werror.patch 1227 BLAKE2B 6c943d0a77465c176109d790e650044227a82b386d43494e0ea19426fa985d732cfd3e3a9ef309c2de38da6693f813c3f87eef58c72ab809ee8f8d6e70396ebf SHA512 40c95ba1c78e854ef97bcecc3b98f16089d5f26c70051a8022a782338c704428cac0f08e87b7b4db495d78245cf191ed0a00406963da77d515c56f1a1fad5d5a
|
||||
DIST libvoikko-4.3.1.tar.gz 658079 BLAKE2B 4f52789b5d62991333ba9b979259a631ef2989bc70358b398a4281d56765046209657fd3e41afd47ee7ba1dbafeeb4a34ffd007e55037bca9958fb813e4b7202 SHA512 6677fac7c0cba1289dda23b0c0a4bbe44480ce747189d40634ac57811728c1942a795efd50270e933373fabab9c54e82a8f9fde06d936442820e3f8019574f08
|
||||
DIST libvoikko-4.3.1.tar.gz.asc 833 BLAKE2B 4a69ae75da1973e383ab21cb557352be1344dc6e34fef13e28616fbd9e0003b93ef5e3488f1e776eb476a750980281463ee144edc5849ec7e3159badc160ceb7 SHA512 04a5e8899679e1503ec0d378903b8ff17e8065aa105ba61559b584eb4cde2a5a9b622fd39bd0126bb87915c7dcbac8495e874c3cdabf25232b1ae41491275ba0
|
||||
EBUILD libvoikko-4.3.1.ebuild 1244 BLAKE2B 9af46e333ec8ebe53e3df8ea21b34d9c6c181ba5f9ed56efad93407d3af7fe98d79caf4063af5817cb7af69a2e24e14c606b5d9c9854ded11452de4b7fedf724 SHA512 21640f9b98d1362a4f6a6d69af4306f28d23ddca1a4736d415013769554b671af36d2f9dcaa5b24ab04f446604a420acd888f3cfc193d6064a4b24a2bbb65a10
|
||||
EBUILD libvoikko-4.3.1.ebuild 1245 BLAKE2B 689688d92a86832c2bddeaff2ebddfcd6c07d261e65ce08db4e00ff348b647805d384f4ced4a13c6423887c820228e62f81d30877b000bd00e63f6c44ed57ae5 SHA512 efaf7c440248913d2d18308b7348528fc9ff114f2282fb52252ee2a36bf78c8ab339f91dfcb8462f9248b6e2aaae4f34471f3073751b592711c8e216e984c1f3
|
||||
MISC metadata.xml 419 BLAKE2B af90ea5ea311d4352bbdfd4852f71dc51564f7f34cd088b8b77016b5500a468d37c4ca6c1cf38ba4e091e8adfaeb5a8051955f189c4855963a4fd6c5b4523ef2 SHA512 8b84aa16876a8aad7bd8bcfd588ff4de660dcc4ec9fd5d07f22d513bfde4cac278992cfd619a5d556256adbc4b00bb946448feefa561fa99e07da2181b121a88
|
||||
|
@ -1,4 +1,4 @@
|
||||
DIST voikko-fi-2.4.tar.gz 701807 BLAKE2B 978871a733b12be53287ec2d4637428f6991cdb3098a97cc7fc673d7b1e1ac85eb6811653c1121a1f04b23f40e1b6ff6340a5514c2d1231cf7be37879c70cf20 SHA512 00098fd52d4f81b30fe7f0ecb97ee8f240d898dfd511da1fdc5e6fd7046f2bf94c0230dc733bc6034f178d56d26c3ee69965eb61c04fc7b30087131767701858
|
||||
DIST voikko-fi-2.4.tar.gz.asc 833 BLAKE2B f4f470118716cf3ad2348b8ae74f57d95a03adff3ffee66a1f09ae569e240a99ff08e026cd7bf575347ec9941bf6e0174c0b3b468a3434304dd8356db3e4d35d SHA512 bb68fe81c0d8cea206b93484d94d5bfc9a9272827616f3ce8016721027a736b190ae37679baed70df0350c3f84235fdb3d6a525d93123ff561ef6d83b7717562
|
||||
EBUILD voikko-fi-2.4.ebuild 847 BLAKE2B 35a73d14066f49e2c55c71a07a4e237ea5aee52ecb3ff1b459c568d6087e2f1b8f5ec791b165a6f321ca63ad8e726c6a4b5968d525d6a17fde1211245ac4d93a SHA512 7ee18393f7d03ec1dd25297fdbb06e79462651fb058e3989e5b505e4e28d82809cccc1ab731b1118e2bb36984241cf82cc76faa1f73d0382f17ca1bb037a1080
|
||||
EBUILD voikko-fi-2.4.ebuild 848 BLAKE2B 31d6bf4f4af6ca80b70da74cce78614b469bc8c176803b0b976c90fe05645c43518e535b613dca80cb68f858ec921ee52511aa39569ea3179d7e916328752704 SHA512 cbd67839b92ea4657a7e5b856db6e1fc7fcf51ec4a9e9d3cc9a2c5606e08e59dd18823a24d8b3c78398f95adc13ca0dbcc337a19548aff28931d8b563267238f
|
||||
MISC metadata.xml 254 BLAKE2B 938f68b7b21ad386a35540a09e4bb956e241dfc963d4823c3c0cd46d3449ff4fb5a1cead67ad7c35a460503d30bdbde35822535f1c2d46f2939ee190f328b846 SHA512 26047ebb40fc49bfb4393121c5c5af69caee617a1d75676be84b0f5af75564828aeeef4503c7681eaaf7e48f6c662574874336296c18e002dca8e925162a1d4c
|
||||
|
@ -1,3 +1,3 @@
|
||||
DIST B-Hooks-OP-Check-0.22.tar.gz 76535 BLAKE2B bc0c6b7b057fab226ebc44376eecc26efd58b699ca87588dfc25d2f539f955f6e657a4e206430b80fceb5039d3203af75ace76d0e86b85bc734b8befaf0bd9aa SHA512 e68b08a34244afc73d7d3b2b0acdf8fe791b0b1f087b6b0496da0a1e655a9e51552ec8fb0f743c8626a0414fb469a2133d113ff5b4ba9f96217cc87bef877542
|
||||
EBUILD B-Hooks-OP-Check-0.220.0-r1.ebuild 707 BLAKE2B 3f0157088ae452e080a0c2ff40704832a5d9fbaebe2bdd7ffbc3d1eadee27cd825bb0fa44ad5b27d565d26c0a6157f9108a58ce7226b6b689cd7f4dc2ad5f093 SHA512 a3f1ad37e27d6f10048e0fa29a0b39f8977e0333b2f6294bd3d2b89bbfe4410f4441be5d0d85c4f5a05cfe909115c22b52bd5b7d8cd921df715b0a44f184e1e6
|
||||
EBUILD B-Hooks-OP-Check-0.220.0-r1.ebuild 713 BLAKE2B 8ae365f4723a3797059c82d89d4bcbb1d58bda0a5d90f7966c77ed1cdb34a077abeed29940f119d82c8e617d9e0320f72f2507715befb38e48fa201ce25071b9 SHA512 388d0440137dd3acacf2a17399b9f91a426a1c1893f8f2f34f4cc406d863f2d6bff7da25280536f9442fb7b75c6ef244d7f503584a8f8df97e4e1cfc22fc15d0
|
||||
MISC metadata.xml 406 BLAKE2B b4956eb9a09808b0d00400a10debd60ebe56f1215212e14528d468144d1b119a0dcf2404aa07317f42222d7b0ab8760fe35759e700cc226076f2de44cc382377 SHA512 568d5590456bf5ea48ec90100403a58a2ced82657bd876d6850571c49fd932b438f882b85bd6df6552a1129c585db8bd8c32b1870da7f44ac3fa211ccd3bc57e
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue