cs136 / seashell

Seashell is an online environment for editing, running, and submitting C programming assignments.
GNU General Public License v3.0
38 stars 19 forks source link

Build tools to simplify dev installation of seashell. #605

Closed kpsuperplane closed 7 years ago

kpsuperplane commented 7 years ago

New individual scripts in ./build_tools to pull submodules, cmake, and install to ./_build and ./_install. make_install.sh also automatically sets symlinks and writes "login2.cgi" with the appropriate path.

Also adds setup.go, which compiles to ./setup, a documented cli tool that calls the above scripts.

Setup from scratch goes something like the follows:

./setup submodules ./setup cmake ./setup install

Everything is now installed to ./_install and the user only needs to add the etc configuration to get going!

kpsuperplane commented 7 years ago

@e45lee I made the changes as requested, and actually removed the go tool completely because I realized the user can simply call ./build_tools/install etc... optional parameters have been added as following:

However, it appears travis is failing because my attempt to substitute build arguments into cmake with a variable has made it interpret parts of it as the actual cmake path... any ideas? image

e45lee commented 7 years ago
eval cmake "$PROJECT_ROOT" -DLLVM_TARGETS_TO_BUILD="X86" -DCMAKE_INSTALL_PREFIX="$INSTALL_PATH" $BUILD_ARGS
e45lee commented 7 years ago

Also, for what it's worth, having the setup script would be pretty useful I think, as it's just one script that you need to run to get a "working" Seashell installation.

kpsuperplane commented 7 years ago

@e45lee The changes have been made with a quickstart script you can pass -c and -i to to specify cmake and install parameters