mirror of
https://github.com/fosslinux/live-bootstrap.git
synced 2026-03-17 16:55:25 +01:00
Remove the notion of "sys*"
- This idea originates from very early in the project and was, at the
time, a very easy way to categorise things.
- Now, it doesn't really make much sense - it is fairly arbitary, often
occuring when there is a change in kernel, but not from builder-hex0
to fiwix, and sysb is in reality completely unnecessary.
- In short, the sys* stuff is a bit of a mess that makes the project
more difficult to understand.
- This puts everything down into one folder and has a manifest file that
is used to generate the build scripts on the fly rather than using
coded scripts.
- This is created in the "seed" stage.
stage0-posix -- (calls) --> seed -- (generates) --> main steps
Alongside this change there are a variety of other smaller fixups to the
general structure of the live-bootstrap rootfs.
- Creating a rootfs has become much simpler and is defined as code in
go.sh. The new structure, for an about-to-be booted system, is
/
-- /steps (direct copy of steps/)
-- /distfiles (direct copy of distfiles/)
-- all files from seed/*
-- all files from seed/stage0-posix/*
- There is no longer such a thing as /usr/include/musl, this didn't
really make any sense, as musl is the final libc used. Rather, to
separate musl and mes, we have /usr/include/mes, which is much easier
to work with.
- This also makes mes easier to blow away later.
- A few things that weren't properly in packages have been changed;
checksum-transcriber, simple-patch, kexec-fiwix have all been given
fully qualified package names.
- Highly breaking change, scripts now exist in their package directory
but NOT WITH THE packagename.sh. Rather, they use pass1.sh, pass2.sh,
etc. This avoids manual definition of passes.
- Ditto with patches; default directory is patches, but then any patch
series specific to a pass are named patches-passX.
This commit is contained in:
parent
0907cfd073
commit
6ed2e09f3a
546 changed files with 700 additions and 1299 deletions
37
steps/gcc-10.4.0/patches/fix-autoreconf.patch
Normal file
37
steps/gcc-10.4.0/patches/fix-autoreconf.patch
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space>
|
||||
SPDX-FileCopyrightText: 2022 Thomas Schwinge <thomas@codesourcery.com>
|
||||
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
Backport of commit 25861cf3a88a07c8dca3fb32d098c0ad756bbe38
|
||||
|
||||
====
|
||||
|
||||
[PATCH] Make 'autoreconf' work for 'gcc', 'libobjc'
|
||||
|
||||
With that, we may then run plain 'autoreconf' for all of GCC's subpackages,
|
||||
instead of for some of those (that don't use Automake) manually having to run
|
||||
the applicable combination of 'aclocal', 'autoconf', 'autoheader'.
|
||||
|
||||
See also 'AC_CONFIG_MACRO_DIRS'/'AC_CONFIG_MACRO_DIR' usage elsewhere.
|
||||
|
||||
--- gcc/configure.ac 2023-01-22 16:22:57.833166450 +1100
|
||||
+++ gcc/configure.ac 2023-01-22 16:23:08.971274603 +1100
|
||||
@@ -25,6 +25,7 @@
|
||||
|
||||
AC_INIT
|
||||
AC_CONFIG_SRCDIR(tree.c)
|
||||
+AC_CONFIG_MACRO_DIRS([../config] [..])
|
||||
AC_CONFIG_HEADER(auto-host.h:config.in)
|
||||
|
||||
gcc_version=`cat $srcdir/BASE-VER`
|
||||
--- libobjc/configure.ac 2023-01-22 16:23:42.648601085 +1100
|
||||
+++ libobjc/configure.ac 2023-01-22 16:23:28.937468262 +1100
|
||||
@@ -20,6 +20,7 @@
|
||||
|
||||
AC_INIT(package-unused, version-unused,, libobjc)
|
||||
AC_CONFIG_SRCDIR([objc/objc.h])
|
||||
+AC_CONFIG_MACRO_DIRS([../config] [..])
|
||||
GCC_TOPLEV_SUBDIRS
|
||||
|
||||
# We need the following definitions because AC_PROG_LIBTOOL relies on them
|
||||
25
steps/gcc-10.4.0/patches/includes.patch
Normal file
25
steps/gcc-10.4.0/patches/includes.patch
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space>
|
||||
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
Two fold issue.
|
||||
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63966
|
||||
Pre-5.0 GCC does not have a cpuid.h header installed on the system, so
|
||||
we use the one from this source tree.
|
||||
|
||||
https://stackoverflow.com/questions/22160093/inconsistent-operand-constraints-in-an-asm
|
||||
Pre-5.0 GCC does not support PIC inline ASM that touches ebx (as
|
||||
presumably the cpuid call does); so we must disable PIC.
|
||||
|
||||
--- libgcc/Makefile.in 2023-01-25 16:03:45.928059755 +1100
|
||||
+++ libgcc/Makefile.in 2023-01-25 16:04:06.711464255 +1100
|
||||
@@ -282,7 +282,7 @@
|
||||
# subdirectory rather than in the source directory.
|
||||
# -I$(@D) and -I$(srcdir)/$(@D) cause the subdirectory of the file
|
||||
# currently being compiled, in both source trees, to be examined as well.
|
||||
-INCLUDES = -I. -I$(@D) -I$(gcc_objdir) \
|
||||
+INCLUDES = -I. -I$(@D) -I$(gcc_objdir) -I../../gcc/include -fno-pic \
|
||||
-I$(srcdir) -I$(srcdir)/$(@D) -I$(srcdir)/../gcc \
|
||||
-I$(srcdir)/../include $(DECNUMINC)
|
||||
|
||||
120
steps/gcc-10.4.0/patches/libgcc-xfmode.patch
Normal file
120
steps/gcc-10.4.0/patches/libgcc-xfmode.patch
Normal file
|
|
@ -0,0 +1,120 @@
|
|||
SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space>
|
||||
SPDX-FileCopyrightText: 2022 Christophe Lyon <christophe.lyon@arm.com>
|
||||
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
In our context, some construct has decided that we don't support
|
||||
XF mode (which is not true for the architecture, in general, as
|
||||
this patch supports, but is sufficient for our strange environment).
|
||||
|
||||
Backport of commit 43ccb7e445329dd9557b42e7289a87a8071ab0f7.
|
||||
|
||||
[PATCH] libgcc: Enable XF mode conversions to/from DFP modes only if
|
||||
supported
|
||||
|
||||
Some targets do not support XF mode (eg AArch64), so don't build the
|
||||
corresponding to/from DFP modes convertion routines if
|
||||
__LIBGCC_HAS_XF_MODE__ is not defined.
|
||||
|
||||
diff --git libgcc/config/libbid/_dd_to_xf.c libgcc/config/libbid/_dd_to_xf.c
|
||||
index 5a2abbbb1f4..e4b12e8ac4f 100644
|
||||
--- libgcc/config/libbid/_dd_to_xf.c
|
||||
+++ libgcc/config/libbid/_dd_to_xf.c
|
||||
@@ -25,6 +25,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
#include "bid_functions.h"
|
||||
#include "bid_gcc_intrinsics.h"
|
||||
|
||||
+#ifdef __LIBGCC_HAS_XF_MODE__
|
||||
XFtype
|
||||
__bid_extendddxf (_Decimal64 x) {
|
||||
XFtype res;
|
||||
@@ -34,3 +35,4 @@ __bid_extendddxf (_Decimal64 x) {
|
||||
res = __bid64_to_binary80 (ux.i);
|
||||
return (res);
|
||||
}
|
||||
+#endif
|
||||
diff --git libgcc/config/libbid/_sd_to_xf.c libgcc/config/libbid/_sd_to_xf.c
|
||||
index 9af09913684..288ccb25075 100644
|
||||
--- libgcc/config/libbid/_sd_to_xf.c
|
||||
+++ libgcc/config/libbid/_sd_to_xf.c
|
||||
@@ -25,6 +25,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
#include "bid_functions.h"
|
||||
#include "bid_gcc_intrinsics.h"
|
||||
|
||||
+#ifdef __LIBGCC_HAS_XF_MODE__
|
||||
XFtype
|
||||
__bid_extendsdxf (_Decimal32 x) {
|
||||
XFtype res;
|
||||
@@ -34,3 +35,4 @@ __bid_extendsdxf (_Decimal32 x) {
|
||||
res = __bid32_to_binary80 (ux.i);
|
||||
return (res);
|
||||
}
|
||||
+#endif
|
||||
diff --git libgcc/config/libbid/_td_to_xf.c libgcc/config/libbid/_td_to_xf.c
|
||||
index b0c76a71497..e990282162d 100644
|
||||
--- libgcc/config/libbid/_td_to_xf.c
|
||||
+++ libgcc/config/libbid/_td_to_xf.c
|
||||
@@ -25,6 +25,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
#include "bid_functions.h"
|
||||
#include "bid_gcc_intrinsics.h"
|
||||
|
||||
+#ifdef __LIBGCC_HAS_XF_MODE__
|
||||
XFtype
|
||||
__bid_trunctdxf (_Decimal128 x) {
|
||||
XFtype res;
|
||||
@@ -34,3 +35,4 @@ __bid_trunctdxf (_Decimal128 x) {
|
||||
res = __bid128_to_binary80 (ux.i);
|
||||
return (res);
|
||||
}
|
||||
+#endif
|
||||
diff --git libgcc/config/libbid/_xf_to_dd.c libgcc/config/libbid/_xf_to_dd.c
|
||||
index 9feb0f2c3d6..e3246a1c2e1 100644
|
||||
--- libgcc/config/libbid/_xf_to_dd.c
|
||||
+++ libgcc/config/libbid/_xf_to_dd.c
|
||||
@@ -25,9 +25,11 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
#include "bid_functions.h"
|
||||
#include "bid_gcc_intrinsics.h"
|
||||
|
||||
+#ifdef __LIBGCC_HAS_XF_MODE__
|
||||
_Decimal64
|
||||
__bid_truncxfdd (XFtype x) {
|
||||
union decimal64 res;
|
||||
res.i = __binary80_to_bid64 (x);
|
||||
return (res.d);
|
||||
}
|
||||
+#endif
|
||||
diff --git libgcc/config/libbid/_xf_to_sd.c libgcc/config/libbid/_xf_to_sd.c
|
||||
index 7d46548af6c..9147e979182 100644
|
||||
--- libgcc/config/libbid/_xf_to_sd.c
|
||||
+++ libgcc/config/libbid/_xf_to_sd.c
|
||||
@@ -25,9 +25,11 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
#include "bid_functions.h"
|
||||
#include "bid_gcc_intrinsics.h"
|
||||
|
||||
+#ifdef __LIBGCC_HAS_XF_MODE__
|
||||
_Decimal32
|
||||
__bid_truncxfsd (XFtype x) {
|
||||
union decimal32 res;
|
||||
res.i = __binary80_to_bid32 (x);
|
||||
return (res.d);
|
||||
}
|
||||
+#endif
|
||||
diff --git libgcc/config/libbid/_xf_to_td.c libgcc/config/libbid/_xf_to_td.c
|
||||
index 07987fdcc3a..c8d102b0b7f 100644
|
||||
--- libgcc/config/libbid/_xf_to_td.c
|
||||
+++ libgcc/config/libbid/_xf_to_td.c
|
||||
@@ -25,9 +25,11 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
#include "bid_functions.h"
|
||||
#include "bid_gcc_intrinsics.h"
|
||||
|
||||
+#ifdef __LIBGCC_HAS_XF_MODE__
|
||||
_Decimal128
|
||||
__bid_extendxftd (XFtype x) {
|
||||
union decimal128 res;
|
||||
res.i = __binary80_to_bid128 (x);
|
||||
return (res.d);
|
||||
}
|
||||
+#endif
|
||||
--
|
||||
2.31.1
|
||||
|
||||
17
steps/gcc-10.4.0/patches/new-gettext.patch
Normal file
17
steps/gcc-10.4.0/patches/new-gettext.patch
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space>
|
||||
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
In new gettext external is required for AM_GNU_GETTEXT.
|
||||
|
||||
--- intl/configure.ac 2023-02-07 18:43:58.989786230 +1100
|
||||
+++ intl/configure.ac 2023-02-07 18:43:02.182632631 +1100
|
||||
@@ -4,7 +4,7 @@
|
||||
AC_CONFIG_HEADER(config.h)
|
||||
AC_CONFIG_MACRO_DIR(../config)
|
||||
AM_GNU_GETTEXT_VERSION(0.12.1)
|
||||
-AM_GNU_GETTEXT([], [need-ngettext])
|
||||
+AM_GNU_GETTEXT([external], [need-ngettext])
|
||||
|
||||
# This replaces the extensive use of DEFS in the original Makefile.in.
|
||||
AC_DEFINE(IN_LIBINTL, 1, [Define because this is libintl.])
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space>
|
||||
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
GCC 4.7 doesn't have fisolate-erroneous-paths-dereference. Hence
|
||||
this line does nothing.
|
||||
|
||||
--- libgcc/generic-morestack.c 2023-01-25 16:52:35.382471998 +1100
|
||||
+++ libgcc/generic-morestack.c 2023-01-25 16:52:40.773585043 +1100
|
||||
@@ -23,8 +23,6 @@
|
||||
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
-#pragma GCC optimize ("no-isolate-erroneous-paths-dereference")
|
||||
-
|
||||
/* powerpc 32-bit not supported. */
|
||||
#if !defined __powerpc__ || defined __powerpc64__
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue