From e10c09cb3b62d5cfda150a29d8ce36c614927026 Mon Sep 17 00:00:00 2001 From: Mid Favila Date: Tue, 23 Aug 2022 16:40:30 -0400 Subject: [PATCH] Begin work on statically linked core. --- NR_NOTES | 5 +++ NR_README | 4 +++ ports/official/core/axel/build | 2 ++ ports/official/core/binutils/build | 9 ++++-- ports/official/core/bison/build | 3 ++ ports/official/core/bzip2/build | 32 +++++++++++++------ ports/official/core/eudev/build | 3 +- ports/official/core/expat/build | 4 ++- ports/official/core/flex/build | 8 +++++ ports/official/core/gavin-bc/build | 4 +-- ports/official/core/gcc/build | 12 +++---- ports/official/core/libz/build | 1 + ports/official/core/mandoc/build | 1 + ports/official/core/netbsd-curses/build | 2 +- ports/official/core/perl/build | 2 +- ports/official/core/sbase/build | 2 +- ports/official/core/util-linux/build | 22 +++++++++---- ports/unofficial/rolling/mp-utils-git/build | 5 +++ ports/unofficial/rolling/mp-utils-git/sources | 2 ++ ports/unofficial/rolling/mp-utils-git/version | 1 + ports/unofficial/rolling/nebula-git/build | 6 ++++ ports/unofficial/rolling/nebula-git/checksums | 1 + ports/unofficial/rolling/nebula-git/depends | 2 ++ ports/unofficial/rolling/nebula-git/sources | 1 + ports/unofficial/rolling/nebula-git/version | 1 + ports/unofficial/rolling/tcc-git/build | 5 ++- ports/unofficial/stable/browser/checksums | 2 +- ports/unofficial/stable/browser/sources | 4 +-- ports/unofficial/stable/nebula/build | 7 ++++ ports/unofficial/stable/nebula/checksums | 1 + ports/unofficial/stable/nebula/sources | 1 + ports/unofficial/stable/nebula/version | 1 + 32 files changed, 119 insertions(+), 37 deletions(-) create mode 100755 ports/unofficial/rolling/mp-utils-git/build create mode 100644 ports/unofficial/rolling/mp-utils-git/sources create mode 100644 ports/unofficial/rolling/mp-utils-git/version create mode 100755 ports/unofficial/rolling/nebula-git/build create mode 100644 ports/unofficial/rolling/nebula-git/checksums create mode 100644 ports/unofficial/rolling/nebula-git/depends create mode 100644 ports/unofficial/rolling/nebula-git/sources create mode 100644 ports/unofficial/rolling/nebula-git/version create mode 100755 ports/unofficial/stable/nebula/build create mode 100644 ports/unofficial/stable/nebula/checksums create mode 100644 ports/unofficial/stable/nebula/sources create mode 100644 ports/unofficial/stable/nebula/version diff --git a/NR_NOTES b/NR_NOTES index abd7f8d..44972e0 100644 --- a/NR_NOTES +++ b/NR_NOTES @@ -1 +1,6 @@ -get python to build without GNU-compatible grep? +-get everything under core/ to build statically? + -anything that relies on libz is an issue, it seems + -binutils is an issue + -so is eudev + -flex diff --git a/NR_README b/NR_README index 32edeb7..17fdbc7 100644 --- a/NR_README +++ b/NR_README @@ -68,6 +68,10 @@ microarchitecture using the following CFLAGS (assuming GCC): -Wl,--hash-style=gnu -Wl,-pie Linker arguments + -fno-lto + Prevent LTO. You can discard this if and only if you are not using + a statically-linked gold or bfd as your primary linker. + A new subdir, bin, containing binaries built with the above CFLAGS (sans native) will be added in the future. I, however, encourage you to build from source if possible. diff --git a/ports/official/core/axel/build b/ports/official/core/axel/build index afc5f0d..b5da4c1 100755 --- a/ports/official/core/axel/build +++ b/ports/official/core/axel/build @@ -1,5 +1,7 @@ #!/bin/sh -e +CFLAGS="$CFLAGS -static " + ./configure \ --prefix=/usr \ --disable-nls \ diff --git a/ports/official/core/binutils/build b/ports/official/core/binutils/build index aa11a5a..84e50f5 100755 --- a/ports/official/core/binutils/build +++ b/ports/official/core/binutils/build @@ -1,5 +1,8 @@ #!/bin/sh -e +CFLAGS="$CFLAGS -static -fPIC" +LDFLAGS="$LDFLAGS -static -fPIC -fno-lto -fno-use-linker-plugin -static -fPIC" + cat > makeinfo <