aboutsummaryrefslogtreecommitdiff
path: root/src/tesserae/core/glibc.nim
diff options
context:
space:
mode:
authoraethrvmn <me@aethrvmn.gr>2025-11-16 20:43:09 +0000
committeraethrvmn <me@aethrvmn.gr>2025-11-16 20:43:09 +0000
commit0a3faf19759472e962029aab5996ac1ebe17d484 (patch)
treeb834bfaf0100161a3462811fcea1579af86d577a /src/tesserae/core/glibc.nim
parentreordered/redefined tasks (diff)
moved core LFS tessera to core/
Diffstat (limited to 'src/tesserae/core/glibc.nim')
-rw-r--r--src/tesserae/core/glibc.nim87
1 files changed, 87 insertions, 0 deletions
diff --git a/src/tesserae/core/glibc.nim b/src/tesserae/core/glibc.nim
new file mode 100644
index 0000000..8e7d68d
--- /dev/null
+++ b/src/tesserae/core/glibc.nim
@@ -0,0 +1,87 @@
+import .. / lapis
+
+tessera "glibc":
+ source: "https://ftp.gnu.org/gnu/glibc/glibc-2.42.tar.xz"
+ patches: @[
+ "https://www.linuxfromscratch.org/patches/lfs/12.4/glibc-2.42-fhs-1.patch"
+ ]
+ dependencies: @[
+ "bash",
+ "binutils",
+ "bison",
+ "coreutils",
+ "diffutils",
+ "gawk",
+ "gcc",
+ "gettext",
+ "grep",
+ "gzip",
+ "make",
+ "perl",
+ "python",
+ "sed",
+ "texinfo"
+ ]
+ build: @[
+ "patch -Np1 -i ../glibc-2.42-fhs-1.patch",
+ """
+ sed -e '/unistd.h/i #include <string.h>' \
+ -e '/libc_rwlock_init/c\
+ __libc_rwlock_define_initialized (, reset_lock);\
+ memcpy (&lock, &reset_lock, sizeof (lock));' \
+ -i stdlib/abort.c
+ """,
+ "mkdir -v build",
+ "cd build",
+ "echo \"rootsbindir=/usr/sbin\" > configparms",
+ """
+ ./configure --prefix=/usr \
+ --disable-werror \
+ --disable-nscd \
+ libc_cv_slibdir=/usr/lib \
+ --enable-stack-protector=strong \
+ --enable-kernel=5.4
+ """,
+ "make",
+ "make check",
+ "touch /etc/ld.so.conf",
+ "sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile",
+ "make install",
+ "sed '/RTLDLIST=/s@/usr@@g' -i /usr/bin/ldd",
+ "localedef -i C -f UTF-8 C.UTF-8 ",
+ "localedef -i cs_CZ -f UTF-8 cs_CZ.UTF-8",
+ "localedef -i de_DE -f ISO-8859-1 deDE ",
+ "localedef -i de_DE@euro -f ISO-8859-15 de_DE",
+ "localedef -i de_DE -f UTF-8 deDE.UTF-8",
+ "localedef -i el_GR -f ISO-8859-7 el_GR",
+ "localedef -i en_GB -f ISO-8859-1 en_GB",
+ "localedef -i en_GB -f UTF-8 en_GB.UTF-8",
+ "localedef -i en_HK -f ISO-8859-1 en_HK",
+ "localedef -i en_PH -f ISO-8859-1 en_PH",
+ "localedef -i en_US -f ISO-8859-1 en_US",
+ "localedef -i en_US -f UTF-8 en_US.UTF-8",
+ "localedef -i es_ES -f ISO-8859-15 es_ES@euro",
+ "localedef -i es_MX -f ISO-8859-1 es_MX",
+ "localedef -i fa_IR -f UTF-8 fa_IR",
+ "localedef -i fr_FR -f ISO-8859-1 fr_FR",
+ "localedef -i fr_FR@euro -f ISO-8859-15 fr_FR",
+ "localedef -i fr_FR -f UTF-8 fr_FR.UTF-8",
+ "localedef -i is_IS -f ISO-8859-1 is_IS",
+ "localedef -i is_IS -f UTF-8 is_IS.UTF-8",
+ "localedef -i it_IT -f ISO-8859-1 it_IT",
+ "localedef -i it_IT -f ISO-8859-15 it_IT@euro",
+ "localedef -i it_IT -f UTF-8 it_IT.UTF-8",
+ "localedef -i ja_JP -f EUC-JP ja_JP",
+ "localedef -i ja_JP -f UTF-8 ja_JP.UTF-8",
+ "localedef -i nl_NL@euro -f ISO-8859-15 nl_NL",
+ "localedef -i ru_RU -f KOI8-R ru_RU.KOI8-R",
+ "localedef -i ru_RU -f UTF-8 ru_RU.UTF-8",
+ "localedef -i se_NO -f UTF-8 se_NNO.UTF-8",
+ "localedef -i ta_IN -f UTF-8 ta_IN.UTF-8",
+ "localedef -i tr_TR -f UTF-8 tr_TR.UTF-8",
+ "localedef -i zh_CN -f GB18030 zh_CN.GB18030",
+ "localedef -i zh_HK -f BIG5-HKSCS zh_GK.BIG5-HKSCS",
+ "localedef -i zh_TW -f UTF-8 zh_TW.UTF-8",
+ "make localedata/install-locales"
+ ]
+ result: ""
Directive (EU) 2019/790, Article 4(3); all rights regarding Text and Data Mining (TDM) are reserved.