aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-07-19 13:26:34 +0800
committerYuqian Yang <crupest@crupest.life>2025-07-19 13:26:34 +0800
commit73065c7f277e968a8938752ebf38e916cf55a5dd (patch)
tree42fc99675d170ca010eca8496b66539b7ddf8a85
parent899e015abf8c70088e8b67e87586ae81f305711c (diff)
downloadcrosstool-ng-73065c7f277e968a8938752ebf38e916cf55a5dd.tar.gz
crosstool-ng-73065c7f277e968a8938752ebf38e916cf55a5dd.tar.bz2
crosstool-ng-73065c7f277e968a8938752ebf38e916cf55a5dd.zip
HALF WORK!HEADmaster
-rw-r--r--config/comp_libs/gnumach.in0
-rw-r--r--config/comp_tools/mig.in0
-rw-r--r--config/kernel/hurd.in5
-rw-r--r--ct-ng.in2
-rw-r--r--packages/gnumach/1.8/chksum8
-rw-r--r--packages/gnumach/1.8/version.desc0
-rw-r--r--packages/gnumach/package.desc5
-rw-r--r--packages/hurd/0.9/chksum8
-rw-r--r--packages/hurd/0.9/version.desc0
-rw-r--r--packages/hurd/package.desc5
-rw-r--r--packages/mig/1.8/chksum8
-rw-r--r--packages/mig/1.8/version.desc0
-rw-r--r--packages/mig/package.desc5
-rw-r--r--scripts/build/kernel/hurd.sh71
-rw-r--r--scripts/functions1
15 files changed, 117 insertions, 1 deletions
diff --git a/config/comp_libs/gnumach.in b/config/comp_libs/gnumach.in
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/config/comp_libs/gnumach.in
diff --git a/config/comp_tools/mig.in b/config/comp_tools/mig.in
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/config/comp_tools/mig.in
diff --git a/config/kernel/hurd.in b/config/kernel/hurd.in
new file mode 100644
index 00000000..030a8aa6
--- /dev/null
+++ b/config/kernel/hurd.in
@@ -0,0 +1,5 @@
+# Hurd config options
+
+## select KERNEL_SUPPORTS_SHARED_LIBS
+##
+## help Build a toolchain targeting systems running GNU Hurd as a kernel
diff --git a/ct-ng.in b/ct-ng.in
index f0a0f573..ca908af7 100644
--- a/ct-ng.in
+++ b/ct-ng.in
@@ -276,9 +276,9 @@ CT_STEPS := \
companion_libs_for_host \
binutils_for_host \
linker \
+ cc_core \
libc_headers \
kernel_headers \
- cc_core \
libc_main \
cc_for_build \
cc_for_host \
diff --git a/packages/gnumach/1.8/chksum b/packages/gnumach/1.8/chksum
new file mode 100644
index 00000000..bb205fad
--- /dev/null
+++ b/packages/gnumach/1.8/chksum
@@ -0,0 +1,8 @@
+md5 gnumach-1.8.tar.bz2 70facef470cc02278ea9789bb9576a18
+sha1 gnumach-1.8.tar.bz2 4b59c7f7bc814576d2b88c43c0cdba292824f230
+sha256 gnumach-1.8.tar.bz2 cda2efc325ebc936e25aafda12532930374c30a01589974ae8c9fa679e373ba0
+sha512 gnumach-1.8.tar.bz2 8b769bbb5222cde89555a4f873871f9a8ccbb6f408fa0ddd0cb710bdb2300d7f6b37b3ce252863f20c6fe5ef5f47fecaf56eb78964f7d701beeb955d455d1212
+md5 gnumach-1.8.tar.gz f2c35b563663cb88e7fbf3b617de64c5
+sha1 gnumach-1.8.tar.gz 8cbebcbee624c64d926de8779272821c67663da5
+sha256 gnumach-1.8.tar.gz 2e55294c57d27ca8e5c7312ad2ba9729fe78d3937287470b95b489769d7e1e0a
+sha512 gnumach-1.8.tar.gz 05a4d1219e94bd3a4fc01d1fea81f0b0c39069a609eff6ba8081859401da621133110cf8f92e30f2a73293c60115b60937326e76ed48fb666ed67636929490f1
diff --git a/packages/gnumach/1.8/version.desc b/packages/gnumach/1.8/version.desc
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/packages/gnumach/1.8/version.desc
diff --git a/packages/gnumach/package.desc b/packages/gnumach/package.desc
new file mode 100644
index 00000000..19605874
--- /dev/null
+++ b/packages/gnumach/package.desc
@@ -0,0 +1,5 @@
+origin='https://www.gnu.org/software/hurd/index.html'
+repository='git git://git.savannah.gnu.org/hurd/gnumach.git'
+mirrors='$(CT_Mirrors GNU gnumach)'
+archive_formats='.tar.bz2 .tar.gz'
+signature_format='packed/.sig'
diff --git a/packages/hurd/0.9/chksum b/packages/hurd/0.9/chksum
new file mode 100644
index 00000000..b75015dd
--- /dev/null
+++ b/packages/hurd/0.9/chksum
@@ -0,0 +1,8 @@
+md5 hurd-0.9.tar.bz2 6473913e3aa5a9d93c754be19c9c2982
+sha1 hurd-0.9.tar.bz2 7e6f406e5202501216a0da4b4ee7914f1e0a7552
+sha256 hurd-0.9.tar.bz2 d5eb814d1e4ceb11f6618e56352a6e72f85aa50da8e9639d8813e69d70570d94
+sha512 hurd-0.9.tar.bz2 715915c9bcb8f1f2102131e38931c2e151737ab7a2199f2e335f8e0b17439fde1fd1e6b6d681546391251043ba2c6ff3913cd80e9bb9f7bb83a93ef9afcb31b0
+md5 hurd-0.9.tar.gz 7e559c59462483f76e28a2438a34ec7d
+sha1 hurd-0.9.tar.gz ef999452b794d7239a5ed98999def51bf11c8c17
+sha256 hurd-0.9.tar.gz fcbd75a511346e31f7683b7b0a1ee999314f7caf955477d9d8fe1e0b3c7d89db
+sha512 hurd-0.9.tar.gz 6cf87996154893b9f450ad318ab32c16be42428cb1b7c469b87e9bb9884b4b15e9dbbe9e065c37d9ede7f3cd6072d797422db0196383a9b02d8ae0f3c9fde4fc
diff --git a/packages/hurd/0.9/version.desc b/packages/hurd/0.9/version.desc
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/packages/hurd/0.9/version.desc
diff --git a/packages/hurd/package.desc b/packages/hurd/package.desc
new file mode 100644
index 00000000..e314b4eb
--- /dev/null
+++ b/packages/hurd/package.desc
@@ -0,0 +1,5 @@
+origin='https://www.gnu.org/software/hurd/index.html'
+repository='git git://git.savannah.gnu.org/hurd/hurd.git'
+mirrors='$(CT_Mirrors GNU hurd)'
+archive_formats='.tar.bz2 .tar.gz'
+signature_format='packed/.sig'
diff --git a/packages/mig/1.8/chksum b/packages/mig/1.8/chksum
new file mode 100644
index 00000000..266a233a
--- /dev/null
+++ b/packages/mig/1.8/chksum
@@ -0,0 +1,8 @@
+md5 mig-1.8.tar.bz2 324a86b97f5eaff058eb3169ac1b9efc
+sha1 mig-1.8.tar.bz2 f765881d6ed4e883372eee52fd7842e7048a3da8
+sha256 mig-1.8.tar.bz2 9ca8bcae0c30a60900cfa56d960d1befead050cae6912db2958d673c9eb1b5e7
+sha512 mig-1.8.tar.bz2 7a8853f80f0d7084244ff0c4f0fa48949216568fddc4fd3702995d04d4d29383087a846eb00443b35133ac38959dad5a085c230b926d9d69010c6031eaa3a0c3
+md5 mig-1.8.tar.gz 147cc646c16e352da819485a3f5caa53
+sha1 mig-1.8.tar.gz 40ae7a5a12e3e5669a2c449be7ebe53c72c90b3a
+sha256 mig-1.8.tar.gz 069c883a8b2cbe61f2e26989bf5b8e697c5a505b77c200ba4d672c833552cdbf
+sha512 mig-1.8.tar.gz a06704f9ce6c758d2592d8cdb08e81f30fa7e153a07a46db83c8cfc938c9839ed1cccc9c56db3b24663cea80650a706d81bd957caa530e522bf9fc86e83f6e02
diff --git a/packages/mig/1.8/version.desc b/packages/mig/1.8/version.desc
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/packages/mig/1.8/version.desc
diff --git a/packages/mig/package.desc b/packages/mig/package.desc
new file mode 100644
index 00000000..8d051fdb
--- /dev/null
+++ b/packages/mig/package.desc
@@ -0,0 +1,5 @@
+origin='https://www.gnu.org/software/hurd/index.html'
+repository='git git://git.savannah.gnu.org/hurd/mig.git'
+mirrors='$(CT_Mirrors GNU mig)'
+archive_formats='.tar.bz2 .tar.gz'
+signature_format='packed/.sig'
diff --git a/scripts/build/kernel/hurd.sh b/scripts/build/kernel/hurd.sh
new file mode 100644
index 00000000..fcda95bc
--- /dev/null
+++ b/scripts/build/kernel/hurd.sh
@@ -0,0 +1,71 @@
+# This file declares functions to install the kernel headers for linux
+# Copyright 2007 Yann E. MORIN
+# Licensed under the GPL v2. See COPYING in the root of this package
+
+CT_DoKernelTupleValues()
+{
+ :
+}
+
+# Download the kernel
+do_kernel_get()
+{
+ CT_Fetch HURD
+ CT_Fetch GNUMACH
+ CT_Fetch MIG
+}
+
+# Extract kernel
+do_kernel_extract()
+{
+ # TBD verify linux_disable_build_relocs is run
+ CT_ExtractPatch HURD
+ CT_ExtractPatch GNUMACH
+ CT_ExtractPatch MIG
+}
+
+# Install kernel headers using headers_install from kernel sources.
+do_kernel_headers()
+{
+ CT_DoStep INFO "Installing kernel headers"
+
+ for component in gnumach mig hurd; do
+ local build_dir="${CT_BUILD_DIR}/${component}"
+ local src_dir="${CT_SRC_DIR}/${component}"
+
+ CT_mkdir_pushd "${build_dir}"
+ CT_DoLog EXTRA "crupest PATH $PATH"
+
+ case ${component} in
+ gnumach)
+ CT_DoLog EXTRA "Installing GNU Mach headers"
+ CT_DoExecLog ALL \
+ ${src_dir}/configure \
+ --host="${CT_TARGET}" \
+ --prefix="/usr"
+ CT_DoExecLog ALL make DESTDIR="${CT_SYSROOT_DIR}" install-data
+ ;;
+ mig)
+ CT_DoLog EXTRA "Installing GNU MIG"
+ CT_DoExecLog ALL \
+ ${src_dir}/configure \
+ --target="${CT_TARGET}" \
+ --prefix="/usr"
+ CT_DoExecLog ALL \
+ make TARGET_CFLAGS="-isysroot ${CT_SYSROOT_DIR}" install
+ ;;
+ hurd)
+ CT_DoLog EXTRA "Installing Hurd headers"
+ CT_DoExecLog ALL \
+ ${src_dir}/configure \
+ --host="${CT_TARGET}" \
+ --prefix="/usr"
+ CT_DoExecLog ALL make prefix="${CT_SYSROOT_DIR}/usr" install-data-local-headers
+ ;;
+ esac
+
+ CT_Popd
+ done
+
+ CT_EndStep
+}
diff --git a/scripts/functions b/scripts/functions
index 9ee0391b..cd15f39b 100644
--- a/scripts/functions
+++ b/scripts/functions
@@ -1780,6 +1780,7 @@ CT_Mirrors()
case "${org}" in
GNU)
+ echo "https://mirrors.tuna.tsinghua.edu.cn/gnu/${project}"
echo "https://ftpmirror.gnu.org/gnu/${project}"
echo "http://ftpmirror.gnu.org/gnu/${project}"
echo "https://ftp.gnu.org/gnu/${project}"