aboutsummaryrefslogtreecommitdiff
path: root/scripts/setup.sh
diff options
context:
space:
mode:
authorAleksa Vučković <aleksav013@gmail.com>2022-01-11 20:10:57 +0100
committerAleksa Vučković <aleksav013@gmail.com>2022-01-11 20:10:57 +0100
commit9cb37d94c95238deb583620dd1360cc71f5238de (patch)
tree36275474881fd8cd84c60f8b9f0ecff2d6f70a97 /scripts/setup.sh
parent5e6b4b23110ead3d8dc9f531dd8002269c05e884 (diff)
Initial commit
Diffstat (limited to 'scripts/setup.sh')
-rwxr-xr-xscripts/setup.sh61
1 files changed, 61 insertions, 0 deletions
diff --git a/scripts/setup.sh b/scripts/setup.sh
new file mode 100755
index 0000000..9145f9d
--- /dev/null
+++ b/scripts/setup.sh
@@ -0,0 +1,61 @@
+#!/bin/sh
+
+download()
+{
+ if [ ! -f "./binutils-2.37.tar.gz" ]; then
+ wget "https://ftp.gnu.org/gnu/binutils/binutils-2.37.tar.gz"
+ fi
+
+ if [ ! -f "./gcc-11.2.0.tar.gz" ]; then
+ wget "https://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.gz"
+ fi
+}
+
+extract()
+{
+ if [ ! -d "./binutils-2.37" ]; then
+ tar xzvf "./binutils-2.37.tar.gz"
+ fi
+
+ if [ ! -d "./gcc-11.2.0" ]; then
+ tar xzvf "./gcc-11.2.0.tar.gz"
+ fi
+}
+
+patch_gnu()
+{
+ mkdir -p "./mine"
+ cd "./mine" || exit
+
+ if [ ! -d "./binutils-2.37" ]; then
+ cp -r "../binutils-2.37" .
+ patch -p0 < "./scripts/aleksa-binutils-2.37.diff"
+ fi
+
+ if [ ! -d "./gcc-11.2.0" ]; then
+ cp -r "../gcc-11.2.0" .
+ patch -p0 < "../scripts/aleksa-gcc-11.2.0.diff"
+ fi
+}
+
+build()
+{
+ cd "./binutils-2.37" || exit
+ ../../../scripts/binutils_build.sh
+ cd .. || exit
+
+
+ cd "./binutils-2.37" || exit
+ ../../../scripts/gcc_build.sh
+ cd .. || exit
+}
+
+main()
+{
+ download
+ extract
+ patch_gnu
+# build
+}
+
+main