This commit is contained in:
Anton Maisak 2021-11-04 22:15:03 +03:00
parent 3d77808867
commit 92f5465df0
38 changed files with 474 additions and 52 deletions

View File

@ -8,6 +8,11 @@
{{ include('../packages/binutils/prepare') }}
```
Примените патч
```bash
{{ include('../packages/binutils/patch') }}
```
<!-- temp solution TODO: Remove in next versions -->
Ошибка в системе сборки приводит к тому, что страницы руководства становятся пустыми. Можно обойти проблему, чтобы страницы руководства были созданы правильно:

View File

@ -2,6 +2,12 @@
## Настройка
Примените патч
```bash
{{ include('../packages/perl/patch') }}
```
Для использования системных версий `zlib` и `bzip2` вместо встроенных выполните:
```bash

View File

@ -8,7 +8,8 @@
## Изменения
- Миграция на mkdocs
- [Исправлено #955](https://github.com/Linux4Yourself/book/issues/955)
- [Миграция на mkdocs](https://github.com/Linux4Yourself/book/issues/889)
- [Исправлено #947](https://github.com/Linux4Yourself/book/issues/947)
- [Исправлено #937](https://github.com/Linux4Yourself/book/issues/937)
- [Исправлено #922](https://github.com/Linux4Yourself/book/issues/922)
@ -78,6 +79,7 @@
- diffutils-3.8
- e2fsprogs-1.46.4
- file-5.41
- gawk-5.1.1
- gcc-11.2.0
- gdbm-1.22
- glibc-2.34
@ -89,7 +91,7 @@
- jinja-3.0.2
- libcap-2.60
- linux-5.14.13
- meson-0.60.0
- meson-0.60.1
- nano-5.9
- openssl-3.0.0
- python-3.10

View File

@ -503,17 +503,17 @@ SBU: **0.1**
Пакет содержит программы для манипуляции с текстовыми файлами. Это GNU версия awk (Aho-Weinberg-Kernighan). Он используется в процедурах сборки для большинства пакетов.
Версия: **5.1.0**
Версия: **5.1.1**
Размер: **3.01Mb**
Размер: **3.10Mb**
Приоритет: **Необходимый**
Оригинальное расположение: [https://ftp.gnu.org/gnu/gawk/gawk-5.1.0.tar.xz](https://ftp.gnu.org/gnu/gawk/gawk-5.1.0.tar.xz)
Оригинальное расположение: [https://ftp.gnu.org/gnu/gawk/gawk-5.1.1.tar.xz](https://ftp.gnu.org/gnu/gawk/gawk-5.1.1.tar.xz)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/gawk-5.1.0.tar.xz](https://lx4u.ru/downloads/packages/gawk-5.1.0.tar.xz)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/gawk-5.1.1.tar.xz](https://lx4u.ru/downloads/packages/gawk-5.1.1.tar.xz)
MD5: **8470c34eeecc41c1aa0c5d89e630df50**
MD5: **83650aa943ff2fd519b2abedf8506ace**
Домашняя страница: [https://gnu.org/software/gawk](https://gnu.org/software/gawk)
@ -1128,17 +1128,17 @@ MD5: **3ac24e8c6fae26b801cb87ceb63c0a30**
Meson - высокопроизводительная и удобная система сборки с открытым исходным кодом. Пакет содержит инструменты для автоматизации сборки программ. Основная цель Meson - минимизировать затраты времени на конфигурирование системы сборки.
Версия: **0.60.0**
Версия: **0.60.1**
Размер: **1.90Mb**
Приоритет: **Важный**
Оригинальное расположение: [https://github.com/mesonbuild/meson/releases/download/0.60.0/meson-0.60.0.tar.gz](https://github.com/mesonbuild/meson/releases/download/0.60.0/meson-0.60.0.tar.gz)
Оригинальное расположение: [https://github.com/mesonbuild/meson/releases/download/0.60.1/meson-0.60.1.tar.gz](https://github.com/mesonbuild/meson/releases/download/0.60.1/meson-0.60.1.tar.gz)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/meson-0.60.0.tar.gz](https://lx4u.ru/downloads/packages/meson-0.60.0.tar.gz)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/meson-0.60.1.tar.gz](https://lx4u.ru/downloads/packages/meson-0.60.1.tar.gz)
MD5: **a810ef49822de717d579413d30629648**
MD5: **77e41dfa4bc456e03b674537b813328b**
Домашняя страница: [https://mesonbuild.com](https://mesonbuild.com)
@ -2113,3 +2113,41 @@ MD5: **e795e52eeefc0d2c62c6c4bd748d2d38**
Домашняя страница: []()
---
# binutils-2.37-upstream_fix-1
Версия: **1**
Размер: **0.01Mb**
Приоритет: **Необходимый**
Оригинальное расположение: [https://www.linuxfromscratch.org/patches/lfs/development/binutils-2.37-upstream_fix-1.patch](https://www.linuxfromscratch.org/patches/lfs/development/binutils-2.37-upstream_fix-1.patch)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/binutils-2.37-upstream_fix-1.patch](https://lx4u.ru/downloads/packages/binutils-2.37-upstream_fix-1.patch)
MD5: **3518fa864fe8d7ef65be4960f380b03b**
Домашняя страница: []()
---
# perl-5.34.0-upstream_fixes-1
Версия: **1**
Размер: **0.00Mb**
Приоритет: **Необходимый**
Оригинальное расположение: [https://www.linuxfromscratch.org/patches/lfs/development/perl-5.34.0-upstream_fixes-1.patch](https://www.linuxfromscratch.org/patches/lfs/development/perl-5.34.0-upstream_fixes-1.patch)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/perl-5.34.0-upstream_fixes-1.patch](https://lx4u.ru/downloads/packages/perl-5.34.0-upstream_fixes-1.patch)
MD5: **fb42558b59ed95ee00eb9f1c1c9b8056**
Домашняя страница: []()
---

View File

@ -0,0 +1 @@
binutils-2.37-upstream_fix-1.patch

View File

@ -0,0 +1 @@
binutils-2.37-upstream_fix-1-1

View File

@ -0,0 +1 @@
https://lx4u.ru/downloads/packages/binutils-2.37-upstream_fix-1.patch

View File

@ -0,0 +1 @@
1

View File

@ -0,0 +1,17 @@
# binutils-2.37-upstream_fix-1
Версия: **1**
Размер: **0.01Mb**
Приоритет: **Необходимый**
Оригинальное расположение: [https://www.linuxfromscratch.org/patches/lfs/development/binutils-2.37-upstream_fix-1.patch](https://www.linuxfromscratch.org/patches/lfs/development/binutils-2.37-upstream_fix-1.patch)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/binutils-2.37-upstream_fix-1.patch](https://lx4u.ru/downloads/packages/binutils-2.37-upstream_fix-1.patch)
MD5: **3518fa864fe8d7ef65be4960f380b03b**
Домашняя страница: []()

View File

@ -6,6 +6,7 @@ multi_configure
multi_install
multi_postinstall
multi_test
patch
postinstall
prepare
test

View File

@ -0,0 +1 @@
patch -Np1 -i ../binutils-2.37-upstream_fix-1.patch

View File

@ -1 +1 @@
gawk-5.1.0.tar.xz
gawk-5.1.1.tar.xz

View File

@ -1 +1 @@
gawk-5.1.0
gawk-5.1.1

View File

@ -1 +1 @@
https://lx4u.ru/downloads/packages/gawk-5.1.0.tar.xz
https://lx4u.ru/downloads/packages/gawk-5.1.1.tar.xz

View File

@ -1 +1 @@
5.1.0
5.1.1

View File

@ -2,17 +2,17 @@
Пакет содержит программы для манипуляции с текстовыми файлами. Это GNU версия awk (Aho-Weinberg-Kernighan). Он используется в процедурах сборки для большинства пакетов.
Версия: **5.1.0**
Версия: **5.1.1**
Размер: **3.01Mb**
Размер: **3.10Mb**
Приоритет: **Необходимый**
Оригинальное расположение: [https://ftp.gnu.org/gnu/gawk/gawk-5.1.0.tar.xz](https://ftp.gnu.org/gnu/gawk/gawk-5.1.0.tar.xz)
Оригинальное расположение: [https://ftp.gnu.org/gnu/gawk/gawk-5.1.1.tar.xz](https://ftp.gnu.org/gnu/gawk/gawk-5.1.1.tar.xz)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/gawk-5.1.0.tar.xz](https://lx4u.ru/downloads/packages/gawk-5.1.0.tar.xz)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/gawk-5.1.1.tar.xz](https://lx4u.ru/downloads/packages/gawk-5.1.1.tar.xz)
MD5: **8470c34eeecc41c1aa0c5d89e630df50**
MD5: **83650aa943ff2fd519b2abedf8506ace**
Домашняя страница: [https://gnu.org/software/gawk](https://gnu.org/software/gawk)

View File

@ -97,3 +97,5 @@ glibc-patch
kbd-patch
sysvinit-patch
efivar-patch
binutils-2.37-upstream_fix-1
perl-5.34.0-upstream_fixes-1

View File

@ -21,7 +21,7 @@ a4fb91a9441bcaec576d4c4a56fa3aa6 expat-2.4.1.tar.xz
18233bb0a0089dfdc7dfbc93b96f231b file-5.41.tar.gz
eeefe2e6380931a77dfa6d9350b43186 findutils-4.8.0.tar.xz
2882e3179748cc9f9c23ec593d6adc8d flex-2.6.4.tar.gz
8470c34eeecc41c1aa0c5d89e630df50 gawk-5.1.0.tar.xz
83650aa943ff2fd519b2abedf8506ace gawk-5.1.1.tar.xz
31c86f2ced76acac66992eeedce2fce2 gcc-11.2.0.tar.xz
0bbd38f12656e4728e2f7c4708aec014 gdbm-1.22.tar.gz
40996bbaf7d1356d3c22e33a8b255b31 gettext-0.21.tar.xz
@ -50,7 +50,7 @@ dad443d0911cf9f0f1bd90a334bc9004 libpipeline-1.5.3.tar.gz
fc7a67ea86ace13195b0bce683fd4469 make-4.3.tar.gz
6e233a555f7b9ae91ce7cd0faa322bce man-db-2.9.4.tar.xz
3ac24e8c6fae26b801cb87ceb63c0a30 man-pages-5.13.tar.xz
a810ef49822de717d579413d30629648 meson-0.60.0.tar.gz
77e41dfa4bc456e03b674537b813328b meson-0.60.1.tar.gz
9f16c976c25bb0f76b50be749cd7a3a8 mpc-1.2.1.tar.gz
bdd3d5efba9c17da8d83a35ec552baef mpfr-4.1.0.tar.xz
e812da327b1c2214ac1aed440ea3ae8d ncurses-6.2.tar.gz
@ -97,3 +97,5 @@ e716728302e3ed1dfffb06050a68517c coreutils-9.0-i18n-1.patch
f75cca16a38da6caa7d52151f7136895 kbd-2.4.0-backspace-1.patch
4900322141d493e74020c9cf437b2cdc sysvinit-2.99-consolidated-1.patch
e795e52eeefc0d2c62c6c4bd748d2d38 efivar-37-gcc_9-1.patch
3518fa864fe8d7ef65be4960f380b03b binutils-2.37-upstream_fix-1.patch
fb42558b59ed95ee00eb9f1c1c9b8056 perl-5.34.0-upstream_fixes-1.patch

View File

@ -1 +1 @@
meson-0.60.0.tar.gz
meson-0.60.1.tar.gz

View File

@ -1 +1 @@
meson-0.60.0
meson-0.60.1

View File

@ -1 +1 @@
https://lx4u.ru/downloads/packages/meson-0.60.0.tar.gz
https://lx4u.ru/downloads/packages/meson-0.60.1.tar.gz

View File

@ -1 +1 @@
0.60.0
0.60.1

View File

@ -2,17 +2,17 @@
Meson - высокопроизводительная и удобная система сборки с открытым исходным кодом. Пакет содержит инструменты для автоматизации сборки программ. Основная цель Meson - минимизировать затраты времени на конфигурирование системы сборки.
Версия: **0.60.0**
Версия: **0.60.1**
Размер: **1.90Mb**
Приоритет: **Важный**
Оригинальное расположение: [https://github.com/mesonbuild/meson/releases/download/0.60.0/meson-0.60.0.tar.gz](https://github.com/mesonbuild/meson/releases/download/0.60.0/meson-0.60.0.tar.gz)
Оригинальное расположение: [https://github.com/mesonbuild/meson/releases/download/0.60.1/meson-0.60.1.tar.gz](https://github.com/mesonbuild/meson/releases/download/0.60.1/meson-0.60.1.tar.gz)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/meson-0.60.0.tar.gz](https://lx4u.ru/downloads/packages/meson-0.60.0.tar.gz)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/meson-0.60.1.tar.gz](https://lx4u.ru/downloads/packages/meson-0.60.1.tar.gz)
MD5: **a810ef49822de717d579413d30629648**
MD5: **77e41dfa4bc456e03b674537b813328b**
Домашняя страница: [https://mesonbuild.com](https://mesonbuild.com)

View File

@ -181,6 +181,7 @@
"multi_install",
"multi_postinstall",
"multi_test",
"patch",
"postinstall",
"prepare",
"test"
@ -619,15 +620,15 @@
},
{
"name": "gawk",
"fileName": "gawk-5.1.0.tar.xz",
"fileName": "gawk-5.1.1.tar.xz",
"description": "Пакет содержит программы для манипуляции с текстовыми файлами. Это GNU версия awk (Aho-Weinberg-Kernighan). Он используется в процедурах сборки для большинства пакетов.",
"url": "https://ftp.gnu.org/gnu/gawk/gawk-5.1.0.tar.xz",
"url": "https://ftp.gnu.org/gnu/gawk/gawk-5.1.1.tar.xz",
"homeUrl": "https://gnu.org/software/gawk",
"version": "5.1.0",
"version": "5.1.1",
"releasesUrl": "https://ftp.gnu.org/gnu/gawk",
"priority": "required",
"md5": "8470c34eeecc41c1aa0c5d89e630df50",
"size": "3.01",
"md5": "83650aa943ff2fd519b2abedf8506ace",
"size": "3.10",
"installedSize": 1.3,
"sbu": 0.3,
"sbu2": 0.3,
@ -641,7 +642,7 @@
"test"
],
"multilibSupport": false,
"downloadUrl": "https://lx4u.ru/downloads/packages/gawk-5.1.0.tar.xz"
"downloadUrl": "https://lx4u.ru/downloads/packages/gawk-5.1.1.tar.xz"
},
{
"name": "gcc",
@ -1354,14 +1355,14 @@
},
{
"name": "meson",
"fileName": "meson-0.60.0.tar.gz",
"fileName": "meson-0.60.1.tar.gz",
"description": "Meson - высокопроизводительная и удобная система сборки с открытым исходным кодом. Пакет содержит инструменты для автоматизации сборки программ. Основная цель Meson - минимизировать затраты времени на конфигурирование системы сборки.",
"url": "https://github.com/mesonbuild/meson/releases/download/0.60.0/meson-0.60.0.tar.gz",
"url": "https://github.com/mesonbuild/meson/releases/download/0.60.1/meson-0.60.1.tar.gz",
"homeUrl": "https://mesonbuild.com",
"version": "0.60.0",
"version": "0.60.1",
"releasesUrl": "https://github.com/mesonbuild/meson/releases/",
"priority": "important",
"md5": "a810ef49822de717d579413d30629648",
"md5": "77e41dfa4bc456e03b674537b813328b",
"size": "1.90",
"installedSize": 5.3,
"sbu": 0,
@ -1373,7 +1374,7 @@
"prepare"
],
"multilibSupport": false,
"downloadUrl": "https://lx4u.ru/downloads/packages/meson-0.60.0.tar.gz"
"downloadUrl": "https://lx4u.ru/downloads/packages/meson-0.60.1.tar.gz"
},
{
"name": "mpc",
@ -1549,6 +1550,7 @@
"build",
"configure",
"install",
"patch",
"postinstall",
"prepare",
"test"
@ -2519,5 +2521,45 @@
"scripts": [
"README.md"
]
},
{
"name": "binutils-2.37-upstream_fix-1",
"fileName": "binutils-2.37-upstream_fix-1.patch",
"description": "",
"url": "https://www.linuxfromscratch.org/patches/lfs/development/binutils-2.37-upstream_fix-1.patch",
"homeUrl": "",
"version": "1",
"releasesUrl": "",
"priority": "required",
"md5": "3518fa864fe8d7ef65be4960f380b03b",
"size": "0.01",
"installedSize": 0,
"sbu": 0,
"sbu2": 0,
"downloadUrl": "https://lx4u.ru/downloads/packages/binutils-2.37-upstream_fix-1.patch",
"multilibSupport": false,
"scripts": [
"README.md"
]
},
{
"name": "perl-5.34.0-upstream_fixes-1",
"fileName": "perl-5.34.0-upstream_fixes-1.patch",
"description": "",
"url": "https://www.linuxfromscratch.org/patches/lfs/development/perl-5.34.0-upstream_fixes-1.patch",
"homeUrl": "",
"version": "1",
"releasesUrl": "",
"priority": "required",
"md5": "fb42558b59ed95ee00eb9f1c1c9b8056",
"size": "0.00",
"installedSize": 0,
"sbu": 0,
"sbu2": 0,
"downloadUrl": "https://lx4u.ru/downloads/packages/perl-5.34.0-upstream_fixes-1.patch",
"multilibSupport": false,
"scripts": [
"README.md"
]
}
]

View File

@ -0,0 +1 @@
perl-5.34.0-upstream_fixes-1.patch

View File

@ -0,0 +1 @@
perl-5.34.0-upstream_fixes-1-1

View File

@ -0,0 +1 @@
https://lx4u.ru/downloads/packages/perl-5.34.0-upstream_fixes-1.patch

View File

@ -0,0 +1 @@
1

View File

@ -0,0 +1,17 @@
# perl-5.34.0-upstream_fixes-1
Версия: **1**
Размер: **0.00Mb**
Приоритет: **Необходимый**
Оригинальное расположение: [https://www.linuxfromscratch.org/patches/lfs/development/perl-5.34.0-upstream_fixes-1.patch](https://www.linuxfromscratch.org/patches/lfs/development/perl-5.34.0-upstream_fixes-1.patch)
Ссылка для загрузки: [https://lx4u.ru/downloads/packages/perl-5.34.0-upstream_fixes-1.patch](https://lx4u.ru/downloads/packages/perl-5.34.0-upstream_fixes-1.patch)
MD5: **fb42558b59ed95ee00eb9f1c1c9b8056**
Домашняя страница: []()

View File

@ -1,6 +1,7 @@
build
configure
install
patch
postinstall
prepare
test

1
docs/packages/perl/patch Normal file
View File

@ -0,0 +1 @@
patch -Np1 -i ../perl-5.34.0-upstream_fixes-1.patch

View File

@ -21,7 +21,7 @@ expect5.45.4.tar.gz
file-5.41.tar.gz
findutils-4.8.0.tar.xz
flex-2.6.4.tar.gz
gawk-5.1.0.tar.xz
gawk-5.1.1.tar.xz
gcc-11.2.0.tar.xz
gdbm-1.22.tar.gz
gettext-0.21.tar.xz
@ -50,7 +50,7 @@ m4-1.4.19.tar.xz
make-4.3.tar.gz
man-db-2.9.4.tar.xz
man-pages-5.13.tar.xz
meson-0.60.0.tar.gz
meson-0.60.1.tar.gz
mpc-1.2.1.tar.gz
mpfr-4.1.0.tar.xz
ncurses-6.2.tar.gz
@ -97,3 +97,5 @@ glibc-2.34-fhs-1.patch
kbd-2.4.0-backspace-1.patch
sysvinit-2.99-consolidated-1.patch
efivar-37-gcc_9-1.patch
binutils-2.37-upstream_fix-1.patch
perl-5.34.0-upstream_fixes-1.patch

View File

@ -21,7 +21,7 @@ https://lx4u.ru/downloads/packages/expect5.45.4.tar.gz
https://lx4u.ru/downloads/packages/file-5.41.tar.gz
https://lx4u.ru/downloads/packages/findutils-4.8.0.tar.xz
https://lx4u.ru/downloads/packages/flex-2.6.4.tar.gz
https://lx4u.ru/downloads/packages/gawk-5.1.0.tar.xz
https://lx4u.ru/downloads/packages/gawk-5.1.1.tar.xz
https://lx4u.ru/downloads/packages/gcc-11.2.0.tar.xz
https://lx4u.ru/downloads/packages/gdbm-1.22.tar.gz
https://lx4u.ru/downloads/packages/gettext-0.21.tar.xz
@ -50,7 +50,7 @@ https://lx4u.ru/downloads/packages/m4-1.4.19.tar.xz
https://lx4u.ru/downloads/packages/make-4.3.tar.gz
https://lx4u.ru/downloads/packages/man-db-2.9.4.tar.xz
https://lx4u.ru/downloads/packages/man-pages-5.13.tar.xz
https://lx4u.ru/downloads/packages/meson-0.60.0.tar.gz
https://lx4u.ru/downloads/packages/meson-0.60.1.tar.gz
https://lx4u.ru/downloads/packages/mpc-1.2.1.tar.gz
https://lx4u.ru/downloads/packages/mpfr-4.1.0.tar.xz
https://lx4u.ru/downloads/packages/ncurses-6.2.tar.gz
@ -97,3 +97,5 @@ https://lx4u.ru/downloads/packages/glibc-2.34-fhs-1.patch
https://lx4u.ru/downloads/packages/kbd-2.4.0-backspace-1.patch
https://lx4u.ru/downloads/packages/sysvinit-2.99-consolidated-1.patch
https://lx4u.ru/downloads/packages/efivar-37-gcc_9-1.patch
https://lx4u.ru/downloads/packages/binutils-2.37-upstream_fix-1.patch
https://lx4u.ru/downloads/packages/perl-5.34.0-upstream_fixes-1.patch

View File

@ -21,7 +21,7 @@ https://prdownloads.sourceforge.net/expect/expect5.45.4.tar.gz
https://astron.com/pub/file/file-5.41.tar.gz
https://ftp.gnu.org/gnu/findutils/findutils-4.8.0.tar.xz
https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz
https://ftp.gnu.org/gnu/gawk/gawk-5.1.0.tar.xz
https://ftp.gnu.org/gnu/gawk/gawk-5.1.1.tar.xz
https://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.xz
https://ftp.gnu.org/gnu/gdbm/gdbm-1.22.tar.gz
https://ftp.gnu.org/gnu/gettext/gettext-0.21.tar.xz
@ -50,7 +50,7 @@ https://ftp.gnu.org/gnu/m4/m4-1.4.19.tar.xz
https://ftp.gnu.org/gnu/make/make-4.3.tar.gz
https://download.savannah.gnu.org/releases/man-db/man-db-2.9.4.tar.xz
https://www.kernel.org/pub/linux/docs/man-pages/man-pages-5.13.tar.xz
https://github.com/mesonbuild/meson/releases/download/0.60.0/meson-0.60.0.tar.gz
https://github.com/mesonbuild/meson/releases/download/0.60.1/meson-0.60.1.tar.gz
https://ftp.gnu.org/gnu/mpc/mpc-1.2.1.tar.gz
https://www.mpfr.org/mpfr-4.1.0/mpfr-4.1.0.tar.xz
https://ftp.gnu.org/gnu/ncurses/ncurses-6.2.tar.gz
@ -97,3 +97,5 @@ https://raw.githubusercontent.com/Linux4Yourself/book/develop/docs/patches/glibc
hhttps://raw.githubusercontent.com/Linux4Yourself/book/develop/docs/patches/kbd-2.4.0-backspace-1.patch
https://raw.githubusercontent.com/Linux4Yourself/book/develop/docs/patches/sysvinit-2.99-consolidated-1.patch
https://raw.githubusercontent.com/Linux4Yourself/book/develop/docs/patches/efivar-37-gcc_9-1.patch
https://www.linuxfromscratch.org/patches/lfs/development/binutils-2.37-upstream_fix-1.patch
https://www.linuxfromscratch.org/patches/lfs/development/perl-5.34.0-upstream_fixes-1.patch

View File

@ -0,0 +1,239 @@
Submitted By: Bruce Dubbs <bdubbs@linuxfromscratch.org>
Date: 2021-08-13
Initial Package Version: 2.37
Upstream Status: Committed
Origin: Upstream
Description: bfd: Close the file descriptor if there is no archive fd
From 1c611b40e6bfc8029bff7696814330b5bc0ee5c0 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Mon, 26 Jul 2021 05:59:55 -0700
Subject: [PATCH] bfd: Close the file descriptor if there is no archive fd
Close the file descriptor if there is no archive plugin file descriptor
to avoid running out of file descriptors on thin archives with many
archive members.
bfd/
PR ld/28138
* plugin.c (bfd_plugin_close_file_descriptor): Close the file
descriptor there is no archive plugin file descriptor.
ld/
PR ld/28138
* testsuite/ld-plugin/lto.exp: Run tmpdir/pr28138 only for
native build.
PR ld/28138
* testsuite/ld-plugin/lto.exp: Run ld/28138 tests.
* testsuite/ld-plugin/pr28138.c: New file.
* testsuite/ld-plugin/pr28138-1.c: Likewise.
* testsuite/ld-plugin/pr28138-2.c: Likewise.
* testsuite/ld-plugin/pr28138-3.c: Likewise.
* testsuite/ld-plugin/pr28138-4.c: Likewise.
* testsuite/ld-plugin/pr28138-5.c: Likewise.
* testsuite/ld-plugin/pr28138-6.c: Likewise.
* testsuite/ld-plugin/pr28138-7.c: Likewise.
(cherry picked from commit 5a98fb7513b559e20dfebdbaa2a471afda3b4742)
(cherry picked from commit 7dc37e1e1209c80e0bab784df6b6bac335e836f2)
---
bfd/plugin.c | 8 +++++++
ld/testsuite/ld-plugin/lto.exp | 34 ++++++++++++++++++++++++++++++
ld/testsuite/ld-plugin/pr28138-1.c | 6 ++++++
ld/testsuite/ld-plugin/pr28138-2.c | 6 ++++++
ld/testsuite/ld-plugin/pr28138-3.c | 6 ++++++
ld/testsuite/ld-plugin/pr28138-4.c | 6 ++++++
ld/testsuite/ld-plugin/pr28138-5.c | 6 ++++++
ld/testsuite/ld-plugin/pr28138-6.c | 6 ++++++
ld/testsuite/ld-plugin/pr28138-7.c | 6 ++++++
ld/testsuite/ld-plugin/pr28138.c | 20 ++++++++++++++++++
10 files changed, 104 insertions(+)
create mode 100644 ld/testsuite/ld-plugin/pr28138-1.c
create mode 100644 ld/testsuite/ld-plugin/pr28138-2.c
create mode 100644 ld/testsuite/ld-plugin/pr28138-3.c
create mode 100644 ld/testsuite/ld-plugin/pr28138-4.c
create mode 100644 ld/testsuite/ld-plugin/pr28138-5.c
create mode 100644 ld/testsuite/ld-plugin/pr28138-6.c
create mode 100644 ld/testsuite/ld-plugin/pr28138-7.c
create mode 100644 ld/testsuite/ld-plugin/pr28138.c
diff --git a/bfd/plugin.c b/bfd/plugin.c
index 6cfa2b66470..3bab8febe88 100644
--- a/bfd/plugin.c
+++ b/bfd/plugin.c
@@ -291,6 +291,14 @@ bfd_plugin_close_file_descriptor (bfd *abfd, int fd)
&& !bfd_is_thin_archive (abfd->my_archive))
abfd = abfd->my_archive;
+ /* Close the file descriptor if there is no archive plugin file
+ descriptor. */
+ if (abfd->archive_plugin_fd == -1)
+ {
+ close (fd);
+ return;
+ }
+
abfd->archive_plugin_fd_open_count--;
/* Dup the archive plugin file descriptor for later use, which
will be closed by _bfd_archive_close_and_cleanup. */
diff --git a/ld/testsuite/ld-plugin/lto.exp b/ld/testsuite/ld-plugin/lto.exp
index def69e43ab3..999d911ce6a 100644
--- a/ld/testsuite/ld-plugin/lto.exp
+++ b/ld/testsuite/ld-plugin/lto.exp
@@ -687,6 +687,40 @@ if { [is_elf_format] && [check_lto_shared_available] } {
}
}
+run_cc_link_tests [list \
+ [list \
+ "Build pr28138.a" \
+ "-T" "" \
+ {pr28138-1.c pr28138-2.c pr28138-3.c pr28138-4.c pr28138-5.c \
+ pr28138-6.c pr28138-7.c} {} "pr28138.a" \
+ ] \
+ [list \
+ "Build pr28138.o" \
+ "" "" \
+ {pr28138.c} {} \
+ ] \
+]
+
+set exec_output [run_host_cmd "sh" \
+ "-c \"ulimit -n 20; \
+ $CC -Btmpdir/ld -o tmpdir/pr28138 \
+ tmpdir/pr28138.o tmpdir/pr28138.a\""]
+set exec_output [prune_warnings $exec_output]
+if [string match "" $exec_output] then {
+ if { [isnative] } {
+ set exec_output [run_host_cmd "tmpdir/pr28138" ""]
+ if [string match "PASS" $exec_output] then {
+ pass "PR ld/28138"
+ } else {
+ fail "PR ld/28138"
+ }
+ } else {
+ pass "PR ld/28138"
+ }
+} else {
+ fail "PR ld/28138"
+}
+
set testname "Build liblto-11.a"
remote_file host delete "tmpdir/liblto-11.a"
set catch_output [run_host_cmd "$ar" "rc $plug_opt tmpdir/liblto-11.a tmpdir/lto-11a.o tmpdir/lto-11b.o tmpdir/lto-11c.o"]
diff --git a/ld/testsuite/ld-plugin/pr28138-1.c b/ld/testsuite/ld-plugin/pr28138-1.c
new file mode 100644
index 00000000000..51d119e1642
--- /dev/null
+++ b/ld/testsuite/ld-plugin/pr28138-1.c
@@ -0,0 +1,6 @@
+extern int a0(void);
+int
+a1(void)
+{
+ return 1 + a0();
+}
diff --git a/ld/testsuite/ld-plugin/pr28138-2.c b/ld/testsuite/ld-plugin/pr28138-2.c
new file mode 100644
index 00000000000..1120cd797e9
--- /dev/null
+++ b/ld/testsuite/ld-plugin/pr28138-2.c
@@ -0,0 +1,6 @@
+extern int a1(void);
+int
+a2(void)
+{
+ return 1 + a1();
+}
diff --git a/ld/testsuite/ld-plugin/pr28138-3.c b/ld/testsuite/ld-plugin/pr28138-3.c
new file mode 100644
index 00000000000..ec464947ee6
--- /dev/null
+++ b/ld/testsuite/ld-plugin/pr28138-3.c
@@ -0,0 +1,6 @@
+extern int a2(void);
+int
+a3(void)
+{
+ return 1 + a2();
+}
diff --git a/ld/testsuite/ld-plugin/pr28138-4.c b/ld/testsuite/ld-plugin/pr28138-4.c
new file mode 100644
index 00000000000..475701b2c5c
--- /dev/null
+++ b/ld/testsuite/ld-plugin/pr28138-4.c
@@ -0,0 +1,6 @@
+extern int a3(void);
+int
+a4(void)
+{
+ return 1 + a3();
+}
diff --git a/ld/testsuite/ld-plugin/pr28138-5.c b/ld/testsuite/ld-plugin/pr28138-5.c
new file mode 100644
index 00000000000..e24f86c363e
--- /dev/null
+++ b/ld/testsuite/ld-plugin/pr28138-5.c
@@ -0,0 +1,6 @@
+extern int a4(void);
+int
+a5(void)
+{
+ return 1 + a4();
+}
diff --git a/ld/testsuite/ld-plugin/pr28138-6.c b/ld/testsuite/ld-plugin/pr28138-6.c
new file mode 100644
index 00000000000..b5b938bdb21
--- /dev/null
+++ b/ld/testsuite/ld-plugin/pr28138-6.c
@@ -0,0 +1,6 @@
+extern int a5(void);
+int
+a6(void)
+{
+ return 1 + a5();
+}
diff --git a/ld/testsuite/ld-plugin/pr28138-7.c b/ld/testsuite/ld-plugin/pr28138-7.c
new file mode 100644
index 00000000000..4ef75bf0f0c
--- /dev/null
+++ b/ld/testsuite/ld-plugin/pr28138-7.c
@@ -0,0 +1,6 @@
+extern int a6(void);
+int
+a7(void)
+{
+ return 1 + a6();
+}
diff --git a/ld/testsuite/ld-plugin/pr28138.c b/ld/testsuite/ld-plugin/pr28138.c
new file mode 100644
index 00000000000..68252c9f382
--- /dev/null
+++ b/ld/testsuite/ld-plugin/pr28138.c
@@ -0,0 +1,20 @@
+#include <stdio.h>
+
+extern int a7(void);
+
+int
+a0(void)
+{
+ return 0;
+}
+
+int
+main()
+{
+ if (a7() == 7)
+ {
+ printf ("PASS\n");
+ return 0;
+ }
+ return 1;
+}
--
2.27.0

View File

@ -0,0 +1,34 @@
Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
Date: 2021-07-13
Initial Package Version: 5.34.0
Upstream Status: Applied
Origin: https://github.com/Perl/perl5/commit/5bc1e5fdd87aa205011512cd1e6cc655bcf677fd
(backported because that did not apply cleanly to 5.34.0)
Description: Fixes error with gdbm-1.20, highlighted by a test failure.
diff -Naur a/ext/GDBM_File/GDBM_File.xs b/ext/GDBM_File/GDBM_File.xs
--- a/ext/GDBM_File/GDBM_File.xs 2021-01-20 23:04:44.000000000 +0000
+++ b/ext/GDBM_File/GDBM_File.xs 2021-07-13 20:39:12.130360272 +0100
@@ -145,14 +145,16 @@
#define gdbm_setopt(db,optflag,optval,optlen) not_here("gdbm_setopt")
#endif
-#ifndef GDBM_ITEM_NOT_FOUND
-# define GDBM_ITEM_NOT_FOUND GDBM_NO_ERROR
-#endif
-
-/* Prior to 1.13, gdbm_fetch family functions set gdbm_errno to GDBM_NO_ERROR
- if the requested key did not exist */
#define ITEM_NOT_FOUND() \
(gdbm_errno == GDBM_ITEM_NOT_FOUND || gdbm_errno == GDBM_NO_ERROR)
+#if GDBM_VERSION_MAJOR == 1 && GDBM_VERSION_MINOR < 13
+/* Prior to 1.13, only gdbm_fetch set GDBM_ITEM_NOT_FOUND if the requested
+ key did not exist. Other similar functions would set GDBM_NO_ERROR instead.
+ The GDBM_ITEM_NOT_FOUND existed as early as in 1.7.3 */
+# define ITEM_NOT_FOUND() (gdbm_errno == GDBM_NO_ERROR || gdbm_errno == GDBM_ITEM_NOT_FOUND)
+#else
+# define ITEM_NOT_FOUND() (gdbm_errno == GDBM_ITEM_NOT_FOUND)
+#endif
#define CHECKDB(db) do { \
if (!db->dbp) { \