summaryrefslogtreecommitdiff
path: root/src/bootstrap/stage-0-make.TARGETS
blob: 51a5ec80e9c5c8f1cd5c704461e8da30aaeef2d6 (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
{ "bootstrap":
  { "type": "export"
  , "flexible_config": ["ARCH", "TARGET_ARCH", "TOOLCHAIN_CONFIG", "ENV"]
  , "target": "bootstrap-make"
  }
, "toolchain":
  { "type": "export"
  , "flexible_config": ["ARCH", "TARGET_ARCH", "TOOLCHAIN_CONFIG", "ENV"]
  , "target": "make"
  }
, "files": {"type": "install", "deps": [["TREE", null, "."]]}
, "bootstrap-make":
  { "type": ["@", "rules", "CC/foreign/shell", "data"]
  , "project": ["files"]
  , "localbase": [["@", "busybox", "", "bootstrap"]]
  , "cmds":
    [ "export PATH=${LOCALBASE}/bin:$PATH"
    , "export LD=${CC}"
    , "export AR=true"
    , "export RANLIB=true"
    , "export SHELL=${LOCALBASE}/bin/sh"
    , "export CONFIG_SHELL=${LOCALBASE}/bin/sh"
    , "unset LDFLAGS"
    , "cd ${TMPDIR}"
    , "(sh ${WORKDIR}/configure --prefix=/ --disable-nls --disable-rpath --disable-load --disable-dependency-tracking >configure.log 2>&1) || (cat configure.log && exit 1)"
    , "(sh ./build.sh >build.log 2>&1) || true"
    , "${CC} -o make $(ls src/*.o lib/*.o | LC_ALL=C sort) >build.log 2>&1 || (cat configure.log build.log && exit 1)"
    , "mv make ${DESTDIR}/bin/"
    ]
  , "outs": ["bin/make"]
  }
, "staged-localbase":
  { "type": "install"
  , "dirs":
    [ [["@", "busybox", "", "toolchain"], "busybox"]
    , ["bootstrap", "make"]
    , [["@", "gcc", "", "toolchain"], "gcc"]
    ]
  }
, "make":
  { "type": ["@", "rules", "CC/foreign/shell", "data"]
  , "project": ["files"]
  , "localbase": ["staged-localbase"]
  , "cmds":
    [ "export NJOBS=$(nproc --all 2>/dev/null || echo 1)"
    , "unset CFLAGS LDFLAGS"
    , "export PATH=${LOCALBASE}/busybox/bin:${LOCALBASE}/busybox/usr/bin:${LOCALBASE}/make/bin:${LOCALBASE}/gcc/bin:$PATH"
    , "export MAKE=${LOCALBASE}/make/bin/make"
    , "export CC=${LOCALBASE}/gcc/bin/gcc"
    , "export CXX=unused"
    , "sh ./configure --prefix=/ --disable-rpath --disable-load >configure.log 2>&1 || (cat configure.log && exit 1)"
    , "${MAKE} -j${NJOBS} MAKEINFO=missing >build.log 2>&1 || (cat configure.log build.log && exit 1)"
    , "${MAKE} -j${NJOBS} MAKEINFO=missing DESTDIR=${DESTDIR} install-strip >>build.log 2>&1 || (cat configure.log build.log && exit 1)"
    ]
  , "out_dirs": ["."]
  }
}