Mercurial > vanilla
annotate dev/gcc/gcc.sh @ 985:baab712749c6
kde/kirigami2: initial import, closes #1817
author | David Demelier <markand@malikania.fr> |
---|---|
date | Wed, 28 Aug 2019 13:49:21 +0200 |
parents | a133976e0783 |
children | ddab65a5b3f5 |
rev | line source |
---|---|
82
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 #!/bin/sh |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 # |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 # Copyright (c) 2019 David Demelier <markand@malikania.fr> |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 # |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 # Permission to use, copy, modify, and/or distribute this software for any |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 # purpose with or without fee is hereby granted, provided that the above |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 # copyright notice and this permission notice appear in all copies. |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 # |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 # |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
18 PKGNAME=gcc |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
19 PKGVERSION=8.3.0 |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
20 PKGREVISION=1 |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
21 PKGLICENSE="GPLv3+" |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
22 PKGSUMMARY="GNU compiler collections" |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
23 PKGDOWNLOAD="ftp://gcc.gnu.org/pub/gcc/releases/$PKGNAME-$PKGVERSION/$PKGNAME-$PKGVERSION.tar.xz" |
902
a133976e0783
vanilla: remove all origins, closes #2203
David Demelier <markand@malikania.fr>
parents:
831
diff
changeset
|
24 PKGDEPENDS="zlib gmp mpfr mpc" |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
25 PKGOPTIONS="NLS" |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
26 |
82
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 : ${CHOST:=$(uname -m)-linux-musl} |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 : ${CBUILD:=$(uname -m)-linux-musl} |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 : ${CTARGET:=$(uname -m)-linux-musl} |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
30 : ${CC:=gcc} |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
31 : ${CFLAGS:=-O2} |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
32 : ${CXX:=g++} |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
33 : ${CXXFLAGS:=-O2} |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
34 : ${LDFLAGS:=} |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
35 : ${LIBS:=} |
147
605b4a7b264a
vanilla: general cleanup
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
36 : ${NLS:=yes} |
82
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
38 if [ "$NLS" = "yes" ]; then |
902
a133976e0783
vanilla: remove all origins, closes #2203
David Demelier <markand@malikania.fr>
parents:
831
diff
changeset
|
39 PKGDEPENDS="gettext $PKGDEPENDS" |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
40 with_nls="--enable-nls" |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
41 else |
82
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 with_nls="--disable-nls" |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 fi |
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
45 build() |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
46 { |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
47 rm -rf $PKGNAME-$PKGVERSION |
606
25cecc6dca48
vanilla: use POSIX shell and busybox tar
David Demelier <markand@malikania.fr>
parents:
595
diff
changeset
|
48 tar xvf $PKGNAME-$PKGVERSION.tar.xz |
25cecc6dca48
vanilla: use POSIX shell and busybox tar
David Demelier <markand@malikania.fr>
parents:
595
diff
changeset
|
49 cd $PKGNAME-$PKGVERSION |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
50 |
595
b8fa19b6a221
vanilla: fix naming style
David Demelier <markand@malikania.fr>
parents:
573
diff
changeset
|
51 # on Vanilla Linux we use /lib rather than /lib64. |
371
b62eafa38603
dev/gcc: disable libgomp, use lib/openmp instead
David Demelier <markand@malikania.fr>
parents:
252
diff
changeset
|
52 sed -i -e '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64 |
b62eafa38603
dev/gcc: disable libgomp, use lib/openmp instead
David Demelier <markand@malikania.fr>
parents:
252
diff
changeset
|
53 sed -i -e 's/lib64/lib/' gcc/config/i386/linux64.h |
82
3600de78994f
dev/gcc: initial import, closes #1075
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 |
606
25cecc6dca48
vanilla: use POSIX shell and busybox tar
David Demelier <markand@malikania.fr>
parents:
595
diff
changeset
|
55 mkdir build && cd build |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
56 CC="$CC" \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
57 CFLAGS="$CFLAGS" \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
58 CXX="$CXX" \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
59 CXXFLAGS="$CXXFLAGS" \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
60 LDFLAGS="$LDFLAGS" \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
61 LIBS="$LIBS" \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
62 ../configure \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
63 --build=$CBUILD \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
64 --host=$CHOST \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
65 --target=$CTARGET \ |
549
bad483aace64
vanilla: use prefix= instead
David Demelier <markand@malikania.fr>
parents:
520
diff
changeset
|
66 --prefix= \ |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
67 --enable-languages=c,c++ \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
68 --enable-threads=posix \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
69 --enable-__cxa_atexit \ |
520 | 70 --libdir=/lib \ |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
71 --with-system-zlib \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
72 --enable-shared \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
73 --enable-tls \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
74 --enable-default-pie \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
75 --enable-default-ssp \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
76 --disable-multilib \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
77 --disable-bootstrap \ |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
78 --disable-libsanitizer \ |
371
b62eafa38603
dev/gcc: disable libgomp, use lib/openmp instead
David Demelier <markand@malikania.fr>
parents:
252
diff
changeset
|
79 --disable-libgomp \ |
715
150598ec37e7
vanilla: clang is the default /bin/cpp implementation
David Demelier <markand@malikania.fr>
parents:
639
diff
changeset
|
80 --with-pkgversion="Vanilla 0.2" \ |
371
b62eafa38603
dev/gcc: disable libgomp, use lib/openmp instead
David Demelier <markand@malikania.fr>
parents:
252
diff
changeset
|
81 $with_nls |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
82 make |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
83 make install DESTDIR=$DESTDIR |
817
0e6c54d47dfb
vanilla: fix many FHS issues
David Demelier <markand@malikania.fr>
parents:
745
diff
changeset
|
84 find $DESTDIR -type f -name "*.la" -delete |
606
25cecc6dca48
vanilla: use POSIX shell and busybox tar
David Demelier <markand@malikania.fr>
parents:
595
diff
changeset
|
85 cd .. |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
86 |
606
25cecc6dca48
vanilla: use POSIX shell and busybox tar
David Demelier <markand@malikania.fr>
parents:
595
diff
changeset
|
87 cd .. |
138
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
88 rm -rf $PKGNAME-$PKGVERSION |
b3f3b8ed8cf2
dev: merge .sh and .info
David Demelier <markand@malikania.fr>
parents:
82
diff
changeset
|
89 } |