fmake

make any project just by typing `fmake`

commit 119668802a84846f73378bb59e5ee96146870b28
parent df4bef967fbfce45a2bf6da54001d67ca58bfdff
Author: Bharatvaj Hemanth <bharatvaj@getsh.org>
Date: Sat, 26 Nov 2022 14:17:46 +0530

Add support for build.ninja

Remove unwanted crap from build.ninja
2 files changed, 4 insertions(+), 5 deletions(-)
M
README
|
1
+
M
config.h
|
8
+++-----
diff --git a/README b/README
@@ -25,4 +25,5 @@ Supported build files
 * cmake
 * configure
 * gradle
+* ninja
 * Much more to be added soon
diff --git a/config.h b/config.h
@@ -4,13 +4,14 @@ typedef enum {
 	FMAKE_POSIX_MAKEFILE,
 	FMAKE_GNU_MAKEFILE,
 	FMAKE_BSD_MAKEFILE,
+	FMAKE_NINJA,
 	FMAKE_AUTOCONF,
 	FMAKE_CONFIGURE,
 	FMAKE_CMAKE,
 	FMAKE_NPM,
 	FMAKE_RUST,
-	FMAKE_GRADLE,
 	FMAKE_PIP,
+	FMAKE_GRADLE,
 } maker_t;
 
 typedef struct {

@@ -20,14 +21,12 @@ typedef struct {
 	const char* args;
 } maker_config_t;
 
-#define multiple_(ARG) \
-	ARG, cmdlists[ARG]
-
 static const maker_config_t makers[] = {
 { "Makefile",       FMAKE_POSIX_MAKEFILE, "make",          ""            },
 { "makefile",       FMAKE_POSIX_MAKEFILE, "make",          ""            },
 { "GNUMakefile",    FMAKE_GNU_MAKEFILE,   "gmake",         ""            },
 { "BSDMakefile",    FMAKE_BSD_MAKEFILE,   "bmake",         ""            },
+{ "build.ninja",    FMAKE_NINJA,          "ninja",         ""            },
 { "configure",      FMAKE_CONFIGURE,      "sh",            "configure"   },
 { "CMakeLists.txt", FMAKE_CMAKE,          "cmake",         "."           },
 { "package.json",   FMAKE_NPM,            "npm",           "install"     },

@@ -39,6 +38,5 @@ static const maker_config_t makers[] = {
 { "gradlew",        FMAKE_GRADLE,         "sh",            "gradlew"     },
 };
 
-static int8_t *detected_indices = 0;
 static maker_config_t maker;