aboutsummaryrefslogtreecommitdiff
path: root/scripts/build/kernel/hurd.sh
blob: fcda95bc5adb8aee0a92f2e0dfb442dbcd93860b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
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
}