Skip to content
/ EZBuild Public

Bash script for building and testing small projects with minimal configuration

License

Notifications You must be signed in to change notification settings

stuin/EZBuild

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EZBuild

Bash script for building and testing small projects with minimal configuration

Config

The default config is designed for small c projects, using the g++ compiler. However, by changing variables both globally and for a specific directory, any ordered set of bash commands can be used.

Inheritance

First priority is given to the local .includes file, followed by any listed parent file. If a value is not found locally or in a parent, the global /etc/ezbuild file will be used.

Merging

Some options will merge the local value and all parent values into a single varaible. A value in the global config will not be included when merging. The files option will include the relevant directory path to every token when merging.

Other Options

Multiple build commands can be used, and the script will run through from 1-num. build commands without a number will be counted as build1.

Option Merging Desc Vars
cd none move to directory and use its config
files path lists all files passed to the build command
output none sets the output file given to the other commands
num none number of build commands to run
builder# none build command run %files, %ncfiles, %cached, %output, %open, %openc
buildargs# basic added to end of build command
caching none sed regex to convert src file paths to cached versions
depfinder none sed -n regex for locating the dependencies of a src file
terminal none emulator command used for -e
tester none command used with -r %output, %open, %openc
testargs basic added to end of test command
testdir basic directory to run test from
parent none provides additional config file to check

Install

First edit the included config file to match your personal system and use case. Then run the install script.

sudo ./install.sh

About

Bash script for building and testing small projects with minimal configuration

Resources

License

Stars

Watchers

Forks

Packages

No packages published