summaryrefslogtreecommitdiff
path: root/strata/build-essential/glibc.morph
blob: 5f625b21c4a81bae7978a803cf519f7936684a50 (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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
name: glibc
kind: chunk
products:
- artifact: glibc-nss
  include:
  - etc/nsswitch.conf
  - (usr/)?lib/libnss.*
- artifact: glibc-gconv
  include:
  - (usr/)?lib/gconv/.*
- artifact: glibc-libs
  include:
  - sbin/ldconfig
  - lib(32|64)?/ld-.*
  - (usr/)?lib(exec)?/pt_chown
- artifact: glibc-bins
  include:
  - (usr/)?s?bin/.*
  - (usr/)?libexec/getconf/.*
  - (usr/)?lib/libSegFault\.so(\.\d+)*$
- artifact: glibc-libs
  include:
  
  # This is processed after bins, so bins can take libSegFault.so
  - (usr/)?lib(32|64)?/lib[^/]*\.so(\.\d+)*$
  - etc/ld.so.conf
  - etc/ld.so.conf.d
- artifact: glibc-devel
  include:
  - (usr/)?include/.*
  - (usr/)?lib(32|64)?/lib.*\.a
  - (usr/)?lib(32|64)?/lib.*\.la
  - (usr/)?(lib(32|64)?|share)/pkgconfig/.*\.pc
  - (usr/)?lib(32|64)?/.*\.o
- artifact: glibc-locale
  include:
  - (usr/)?share/locale/.*
  - (usr/)?share/i18n/.*
  - (usr/)?share/zoneinfo/.*
- artifact: glibc-misc
  include:
  - .*
configure-commands:
- mkdir o

- |
  case "$MORPH_ARCH" in
      armv7*)
          ARCH_FLAGS="--without-fp" ;;
  esac

  # We override the PATH here to remove /tools/bin from it.
  # Thanks to this glibc finds bash in /bin/bash through the /bin
  # symlink. This is important because glibc changes the path to bash
  # of the shebang in some scripts and these scripts will be broken if
  # they point to bash in /tools/bin/bash.
  export PATH="/usr/bin:/sbin:/bin";
  export CFLAGS="-O2 $CFLAGS";
  cd o && ../configure \
    $ARCH_FLAGS \
    --prefix="$PREFIX" \
    --disable-profile \
    --enable-kernel=3.0.0 \
    --without-cvs \
    --without-selinux \
    --enable-obsolete-rpc
build-commands:
- cd o && make localtime=UTC

install-commands:
- cd o && make install_root="$DESTDIR" localtime=UTC install
- mkdir -p "$DESTDIR/etc"
- mkdir -p "$DESTDIR/etc/ld.so.conf.d"
- |
  cat <<EOF > nsswitch.conf
  passwd: compat
  group: compat
  shadow: compat

  hosts: files myhostname mdns4_minimal [NOTFOUND=return] dns mdns4
  networks: files

  protocols: db files
  services: db files
  ethers: db files
  rpc: db files

  netgroup: nis
  EOF
- install -m 644 -o root -g root nsswitch.conf "$DESTDIR/etc/nsswitch.conf"
- |
  cat <<EOF > ld.so.conf
  /lib
  /usr/lib
  /usr/local/lib
  include /etc/ld.so.conf.d/*.conf
  EOF
- install -m 644 -o root -g root ld.so.conf "$DESTDIR/etc/ld.so.conf"