This repository has been archived by the owner on Jan 22, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathcross-glibc.yaml
75 lines (75 loc) · 1.92 KB
/
cross-glibc.yaml
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
72
73
74
75
package:
name: cross-glibc-stage1
version: 2.36
epoch: 1
description: "the GNU C library"
target-architecture:
- all
copyright:
- paths:
- "*"
attestation: TODO
license: GPL-3.0-or-later
dependencies:
runtime:
- cross-linux-headers
environment:
contents:
repositories:
- https://mirrors.edge.kernel.org/alpine/edge/main
packages:
- alpine-baselayout-data
- busybox
- build-base
- scanelf
- ssl_client
- ca-certificates-bundle
- texinfo
- gmp-dev
- mpfr-dev
- mpc1-dev
- zlib-dev
- gawk
- zip
- bison
- flex
- cross-binutils-stage1
- cross-gcc-stage1
- cross-linux-headers
- python3
- grep
pipeline:
- uses: fetch
with:
uri: http://ftp.gnu.org/gnu/libc/glibc-${{package.version}}.tar.gz
expected-sha256: 02efa6ffbbaf3e10e88f16818a862608d04b0ef838c66f6025ae120530792c9c
- name: 'Fix compatibility with GNU make 4.4'
runs: |
sed '/MAKEFLAGS :=/s/)r/) -r/' -i Makerules
- name: 'Set up build directory'
runs: |
mkdir build
- name: 'Configure GCC'
runs: |
cd build
../configure \
--prefix=/ \
--libdir=/lib \
--includedir=/usr/include \
--host=${{cross.triplet.gnu.glibc}} \
--target=${{cross.triplet.gnu.glibc}} \
--build=$(../config.guess) \
--disable-nls \
--disable-werror \
--enable-kernel=4.9 \
--with-sysroot=/usr/${{cross.triplet.gnu.glibc}} \
--with-headers=/usr/${{cross.triplet.gnu.glibc}}/usr/include \
--disable-nls
- runs: |
make -C build -j$(nproc)
- runs: |
make -C build -j$(nproc) install DESTDIR="${{targets.destdir}}/usr/${{cross.triplet.gnu.glibc}}"
# - name: 'Clean up host aliases'
# runs: |
# rm -rf ${{targets.destdir}}/usr/${{host.triplet.gnu}}
- uses: strip