summaryrefslogtreecommitdiff
path: root/runs
diff options
context:
space:
mode:
authorJacob McDonnell <jacob@jacobmcdonnell.com>2025-05-10 19:56:27 -0400
committerJacob McDonnell <jacob@jacobmcdonnell.com>2025-05-10 19:56:27 -0400
commitb0eb9b97fe9466d92927a5e746054921e44eaa0c (patch)
tree24ce751968a403e60bc201952bc11ca81e2ec9aa /runs
parent8afd96f693d9ac0daeb04afcfed0b5a8b4dd8062 (diff)
Switched back to Fedora
Diffstat (limited to 'runs')
-rwxr-xr-xruns/cross-compiler75
-rwxr-xr-xruns/neovim4
-rwxr-xr-xruns/programs6
3 files changed, 83 insertions, 2 deletions
diff --git a/runs/cross-compiler b/runs/cross-compiler
new file mode 100755
index 0000000..6f2f00e
--- /dev/null
+++ b/runs/cross-compiler
@@ -0,0 +1,75 @@
+#!/bin/sh
+
+BINUTILS="binutils-2.44"
+GCC="gcc-15.1.0"
+GDB="gdb-16.3"
+
+export PREFIX="$HOME/personal"
+export TARGET=aarch64-elf
+
+CORES="$(nproc 2&>/dev/null)"
+
+cd /tmp
+
+sudo dnf install gcc gcc-c++ make bison flex gmp-devel libmpc-devel mpfr-devel texinfo isl-devel -y
+
+rm -rf cross
+mkdir cross
+cd cross
+
+if [[ "$(find . -type d -name "$BINUTILS")" != "./$BINUTILS" ]]
+then
+ wget "https://ftp.gnu.org/gnu/binutils/$BINUTILS.tar.zst"
+ unzstd "$BINUTILS.tar.zst"
+ tar xf "$BINUTILS.tar"
+fi
+
+if [[ "$(find . -type d -name "$GCC")" != "./$GCC" ]]
+then
+ wget "https://ftp.gnu.org/gnu/gcc/$GCC/$GCC.tar.gz"
+ unxz "$GDB.tar.xz"
+ tar xf "$GDB.tar"
+fi
+
+if [[ "$(find . -type d -name "$GDB")" != "./$GDB" ]]
+then
+ wget "https://ftp.gnu.org/gnu/gdb/$GDB.tar.xz"
+ gunzip "$GCC.tar.gz"
+ tar xf "$GCC.tar"
+fi
+
+rm -rf build-binutils
+mkdir build-binutils
+cd build-binutils
+
+../$BINUTILS/configure --target=$TARGET --prefix="$PREFIX" --with-sysroot --disable-nls --disable-werror
+make -j $CORES
+make install
+
+cd ..
+
+rm -rf build-gdb
+mkdir build-gdb
+cd build-gdb
+
+../$GDB/configure --target=$TARGET --prefix="$PREFIX" --disable-werror
+make all-gdb -j $CORES
+make install-gdb
+
+cd ..
+
+build-gcc () {
+rm -rf build-gcc
+mkdir build-gcc
+cd build-gcc
+
+../$GCC/configure --target=$TARGET --prefix="$PREFIX" --disable-nls --enable-languages=c,c++ --without-headers --disable-hosted-libstdcxx
+make all-gcc -j $CORES
+make all-target-libgcc -j $CORES
+make all-target-libstdc++-v3 -j $CORES
+make install-gcc
+make install-target-libgcc
+make install-target-libstdc++-v3
+
+cd ..
+
diff --git a/runs/neovim b/runs/neovim
index 6592267..ed53afc 100755
--- a/runs/neovim
+++ b/runs/neovim
@@ -5,7 +5,9 @@ source $HOME/personal/dotfiles/util
version="v0.10.2"
git clone -b $version https://github.com/neovim/neovim.git $target/neovim
-sudo apt install ninja-build gettext cmake unzip curl build-essential
+
+sudo dnf -y install ninja-build cmake gcc make gettext curl glibc-gconv-extra
+
cd $target/neovim
make CMAKE_BUILD_TYPE=RelWithDebInfo
make CMAKE_INSTALL_PREFIX=$target install
diff --git a/runs/programs b/runs/programs
index 78e1003..b412969 100755
--- a/runs/programs
+++ b/runs/programs
@@ -1,4 +1,8 @@
#!/bin/sh
-sudo apt install build-essential gdb clangd git tmux zsh golang fzf -y
+sudo dnf install @development-tools
+
+sudo dnf install @virtualization
+
+sudo dnf install gdb clangd git tmux zsh golang fzf -y