summaryrefslogtreecommitdiff
path: root/Toolchain
AgeCommit message (Collapse)Author
2020-02-27Toolchain: Add x86_64 cross compiler build scriptJesse Buhagiar
2020-02-21Toolchain: Build demangling into LibC except during toolchain buildAndreas Kling
2020-01-25Toolchain: Fix python build script.Emanuel Sprung
This fixes #995
2020-01-25Toolchain: Fix qemu build script.Emanuel Sprung
2020-01-02Build: add support for building on OpenBSDjoshua stein
This requires gcc8 from ports to build the Toolchain.
2020-01-01Toolchain: Use crtbeginS and crtendS for shared objectsAndrew Kaster
Turns out the reason GCC wasn't as smart about startup code for shared objects as we hoped is because nobody told it to be :D Change the STARTFILE_SPEC and ENDFILE_SPEC in gcc/config/serenity.h to skip crt0.o and to link the S variants of crtbegin and crtend for shared objects. Because we're using the crtbegin and crtend from libgcc, also tell libgcc in libgcc/config.host to compile crtbeginS and crtendS from crtstuff.c.
2019-12-28Toolchain: Fix building binutils on macOS with --enable-sharedStefano Cristiano
2019-12-27Toolchain: Allow building shared objectsAndreas Kling
Here goes a small first step towards dynamic linking.
2019-12-27Build: Allow building serenityOS ext2 root filesystem on macOS hostStefano Cristiano
2019-12-27Toolchain: Statically link serenity cross-compiler on macOS to keep the ↵Stefano Cristiano
cross-toolchain self contained
2019-12-25Toolchain: Fixup CMake toolchain script to install things in /usrAndreas Kling
Also stop clobbering the host's /usr/local/share for DATAROOTDIR.
2019-12-20Build: get rid of UseIt.shjoshua stein
The build system uses relative paths to the toolchain binaries, so modifying $PATH is no longer necessary, and nothing needs $SERENITY_ROOT anymore.
2019-12-20Toolchain: Use "make install" to install our LibC and LibMAndreas Kling
2019-12-19Toolchain: Redirect git command output to /dev/nullAndreas Kling
Travis is currently failing and whining about the log being too long. It appears to be filling up with output from the git hackery.
2019-12-19Toolchain: Fix outdated MD5 sum of binutils tarballAndreas Kling
2019-12-19Update toolchain to binutils-2.33.1 gcc-9.2.0Philip Herron
Toolchain build makes git repo out of toolchain to allow patching Fix Makefiles to use new libstdc++ Parameterize BuildIt with default TARGET of i686 but arm is experimental
2019-11-25Ports: check for native python3 installation, add build scriptEmanuel Sprung
For python3 cross compilation, a native installation of python3 is needed. This patch adds a build script for python3 to the toolchain and informs the user to run that script if the python port is build and no native python3 with the same major and minor version is being found.
2019-11-11Toolchain: Add QEMU build script and improve documentationEmanuel Sprung
Added a script to build QEMU from source as part of the Toolchain. The script content could be in BuildIt.sh but has been put in a seperate file to make the build optional. Added PATH=$PATH to sudo calls to hand over the Toolchain's PATH setup by UseIt.sh. This enabled the script's to use the QEMU contained in the SerenityOS toolchain. Deleted old documentation in Meta and replaced it by a new documentation in the Toolchain folder.
2019-11-11Toolchain: Fix indentation in BuildIt.sh (#761)Nicolas Van Bossuyt
2019-11-03POSIX compliance: (most) shell scripts converted to generic shellGeorge Pickering
Ports/.port_include.sh, Toolchain/BuildIt.sh, Toolchain/UseIt.sh have been left largely untouched due to use of Bash-exclusive functions and variables such as $BASH_SOURCE, pushd and popd.
2019-09-26Toolchain/BuildIt.sh: Use curl instead of wgetLarkin Nickle
We already use curl for ports, so let's be consistent.
2019-07-22Toolchain: Oops, we can't rely on "install.sh" to build LibC/LibM.Andreas Kling
When we used "make install" in the past, the "install" target would pull in the library targets as dependencies, and everything got built that way. Now that we use "install.sh" instead, we have to build things manually.
2019-07-21Toolchain: Use "install.sh" to install LibC and LibM.Andreas Kling
2019-07-04Libraries: Create top level directory for libraries.Andreas Kling
Things were getting a little crowded in the project root, so this patch moves the Lib*/ directories into Libraries/.
2019-05-20Toolchain: Oops, let's unbreak UseIt.sh.Andreas Kling
2019-05-18Toolchain: Add some required options to the default CMake options.Robin Burchell
2019-05-17Build: Install most headers to Root (and libcore.a/libgui.a)Robin Burchell
This makes out-of-tree linking possible. And at the same time, add a CMakeToolchain.txt file that can be used to build arbitrary cmake-using applications on Serenity by pointing to the CMAKE_TOOLCHAIN_FILE when running cmake: -DCMAKE_TOOLCHAIN_FILE=~/code/serenity/Toolchain/CMakeToolchain.txt
2019-05-15BuildIt: Allow specifying MAKEJOBS rather than forcing to nprocsRobin Burchell
2019-05-15UseIt: allow sourcing from outside the Toolchain dirRobin Burchell
2019-05-15BuildIt: use set -e to fail immediately on errorRobin Burchell
This saves time if something goes wrong very early in the build process.
2019-05-08Toolchain: Make sure everything ends up in the right place in Root/Andreas Kling
2019-04-29Toolchain: Build GCC with --with-newlibAndreas Kling
2019-04-29Toolchain: The toolchain script is now working 🎉VAN BOSSUYT Nicolas
2019-04-29Toolchain: Useit.sh finish and added an install target for the libc's ↵VAN BOSSUYT Nicolas
Makefile and a bit of ground work for a gcc port
2019-04-29Toolchain: GCC and binutils are now configure correctlyVAN BOSSUYT Nicolas
2019-04-29Toolchain: Added build script (wip)VAN BOSSUYT Nicolas