Mercurial > vanilla
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 |
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 } |