annotate dev/binutils/binutils.sh @ 138:b3f3b8ed8cf2

dev: merge .sh and .info
author David Demelier <markand@malikania.fr>
date Mon, 11 Mar 2019 15:44:15 +0100
parents 3db0ed0ab5a6
children 605b4a7b264a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
39
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #!/bin/sh
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 #
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 # Copyright (c) 2019 David Demelier <markand@malikania.fr>
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 #
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 # Permission to use, copy, modify, and/or distribute this software for any
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 # purpose with or without fee is hereby granted, provided that the above
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # copyright notice and this permission notice appear in all copies.
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 #
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 #
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
17
138
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
18 PKGNAME=binutils
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
19 PKGVERSION=2.32
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
20 PKGREVISION=1
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
21 PKGLICENSE="GPLv3"
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
22 PKGSUMMARY="programs to manipulate binary and object files"
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
23 PKGDOWNLOAD="https://ftp.gnu.org/gnu/$PKGNAME/$PKGNAME-$PKGVERSION.tar.xz"
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
24 PKGDEPENDS="lib/zlib"
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
25 PKGOPTIONS="GDB NLS"
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
26
76
3db0ed0ab5a6 dev/binutils: allow modifications
David Demelier <markand@malikania.fr>
parents: 39
diff changeset
27 : ${CHOST:=$(uname -m)-linux-musl}
3db0ed0ab5a6 dev/binutils: allow modifications
David Demelier <markand@malikania.fr>
parents: 39
diff changeset
28 : ${CBUILD:=$(uname -m)-linux-musl}
3db0ed0ab5a6 dev/binutils: allow modifications
David Demelier <markand@malikania.fr>
parents: 39
diff changeset
29 : ${CC:=gcc}
3db0ed0ab5a6 dev/binutils: allow modifications
David Demelier <markand@malikania.fr>
parents: 39
diff changeset
30 : ${CFLAGS:=-O2}
3db0ed0ab5a6 dev/binutils: allow modifications
David Demelier <markand@malikania.fr>
parents: 39
diff changeset
31 : ${CXX:=g++}
3db0ed0ab5a6 dev/binutils: allow modifications
David Demelier <markand@malikania.fr>
parents: 39
diff changeset
32 : ${CXXFLAGS:=-O2}
138
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
33 : ${LDFLAGS:=}
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
34 : ${LIBS:=}
39
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
35
138
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
36 if [ "$NLS" = "yes" ]; then
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
37 PKGDEPENDS="core/gettext $PKGDEPENDS"
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
38 with_nls="--enable-nls"
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
39 else
39
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
40 with_nls="--disable-nls"
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 fi
138
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
42 if [ "$GDB" = "yes" ]; then
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
43 with_gdb="--enable-gdb"
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
44 else
39
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
45 with_gdb="--disable-gdb"
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
46 fi
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
47
138
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
48 build()
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
49 {
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
50 rm -rf $PKGNAME-$PKGVERSION
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
51 tar xvaf $PKGNAME-$PKGVERSION.tar.xz
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
52 pushd $PKGNAME-$PKGVERSION
39
08abb38e51dd dev/binutils: initial import, closes #1072
David Demelier <markand@malikania.fr>
parents:
diff changeset
53
138
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
54 CFLAGS="$CFLAGS" \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
55 CXXFLAGS="$CXXFLAGS" \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
56 CC="$CC" \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
57 CXX="$CXX" \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
58 LDFLAGS="$LDFLAGS" \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
59 LIBS="$LIBS" \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
60 ./configure \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
61 --build=$CBUILD \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
62 --host=$CHOST \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
63 --target=$CTARGET \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
64 --prefix=/usr \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
65 --disable-werror \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
66 --enable-gold \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
67 --enable-ld=default \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
68 --enable-lto \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
69 --enable-plugins \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
70 --enable-relro \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
71 --enable-shared \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
72 --enable-threads \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
73 --with-pic \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
74 --with-system-zlib \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
75 ${with_nls} \
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
76 ${with_gdb}
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
77 make tooldir=/usr
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
78 make tooldir=/usr install DESTDIR=$DESTDIR
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
79
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
80 popd
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
81 rm -rf $PKGNAME-$PKGVERSION
b3f3b8ed8cf2 dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents: 76
diff changeset
82 }