fmake

make any project just by typing `fmake`
git clone git@getsh.org:fmake.git
Log | Files | Refs | README | LICENSE

commit f071180bd96d15591d0e6b00299bb67841932ea8
parent 3199d8b26439c778d6ae9b7320533fcfc3bbeb21
Author: Bharatvaj Hemanth <bharatvaj@getsh.org>
Date:   Mon, 28 Nov 2022 09:17:49 +0530

Add default 'out' directory when there is no std

Add support for 'gn'

Diffstat:
MREADME | 2++
Mconfig.h | 4+++-
2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/README b/README @@ -10,6 +10,8 @@ fmake refrains from reading the source files. fmake "intelligently" knows what targets to build. These can be configured in the config.h file. +Opinionates build directory as 'out' in case of no clear build 'out' directory standard. Avoids in-source builds. + USAGE ----- To avoid complexity, fmake does not fork any process to run the commands. It just prints out the right command. diff --git a/config.h b/config.h @@ -8,6 +8,7 @@ typedef enum { FMAKE_AUTOCONF, FMAKE_CONFIGURE, FMAKE_CMAKE, + FMAKE_GN, FMAKE_NPM, FMAKE_RUST, FMAKE_PIP, @@ -28,7 +29,8 @@ static const maker_config_t makers[] = { { "BSDMakefile", FMAKE_BSD_MAKEFILE, "bmake", "" }, { "build.ninja", FMAKE_NINJA, "ninja", "" }, { "configure", FMAKE_CONFIGURE, "sh", "configure" }, -{ "CMakeLists.txt", FMAKE_CMAKE, "cmake", "." }, +{ "CMakeLists.txt", FMAKE_CMAKE, "cmake", "-B out" }, +{ "BUILD.gn", FMAKE_GN, "gn", "gen out" }, { "package.json", FMAKE_NPM, "npm", "install" }, { "Cargo.toml", FMAKE_RUST, "cargo", "install" }, { "setup.py", FMAKE_PIP, "pip", "install ." },